Subclasses and Superclasses

In Java and C++, there is an explicit concept of the class hierarchy.
i.e. Every class can have a super class from which it inherits properties
and methods. Any class can be extended, or sub-classed so the resulting
subclass can inherit its parent's behavior. As we have seen, JavaScript
supports prototype inheritance instead of class based. It's possible for
inheritance to happen other ways, however.