A method is a way to teach the computer a new command
If a class A extends the class B, then A is a subclass of B.
If a class A extends the class B, then B is the superclass of A.
An object can take on different forms depending on its implementation. Java can call the correct method even when an object is disguised as a more generic reference type