Summary
A class is a formal category of program objects within a software system.
Instances have all the member variables and methods of their class, including those inherited from superclasses.
Subclasses can contain member variables and methods in addition to those inherited.
Inherited methods can be overridden with versions specific to a subclass.
Java provides mechanisms for hiding or not hiding names across the class hierarchy.
Classes are related to types.