Abstract Methods and Classes
An abstract method has no body - it is provided in a class to define the signature of the method for program structuring purposes. It must be defined in some subclass of the class in which it is declared.
- Constructors, static methods, private methods cannot be abstract
- A method that overrides a superclass method cannot be abstract
Classes that contain abstract methods and classes that inherit abstract methods without overriding them are considered abstract classes
- It is compile-time error to instantiate an abstract class or attempt to call an abstract method directly.