In particular, certain changes aren't just the absence of classes or interfaces, but actually change the inheritance hierarchy of the base class library.
Changes to the middle of an inheritance hierarchy.
Object-oriented programming in D is based on a single inheritance hierarchy, with all classes derived from class Object.
There are two vtable pointers, one per inheritance hierarchy that virtually inherits .
In defining this inheritance hierarchy we have already defined certain restrictions, not all of which are desirable.
Static: the inheritance hierarchy of an object is fixed at instantiation when the object's type is selected and does not change with time.
However, neither the inheritance hierarchy nor the types of the objects can change with time.
Their inheritance hierarchy (from Object), and the main facilities they provide are:
JavaScript supports inheritance hierarchies through prototyping in the manner of Self.
This provides a completely general mechanism for addressing all objects in the inheritance hierarchy.