A subclass of a parent class (or super class) that acts as a specialized version of the class, that inherits it's methods
Through polymorphism, a reference variable can reference various objects of class that are inherited from the variable's class.
An interface is a class that has all abstract classes, used specifiy the behavior of other classes.
An exception is an object that is generated as the result of an error or an unexpected event. To handle these, you must use try and catch blocks to prevent anticipated exceptions from stopping the program.
You can use the throw statement to create and 'throw' an exception object, either one of the standard Java Exceptions, or a custom Exception you have designed.