Abstract Classes
- It represents a concept on which other classes can build their definitions.An abstract class cannot be instantiated.
- A class derived from an abstract parent must override all of its parent’s abstract methods, or the derived class will also be considered abstract.
- An abstract class is similar to an interface in some ways.
- However, unlike interfaces, an abstract class can contain methods that are not abstract.
- An abstract class can also contain data declarations other than constants.
- A class is declared as abstract by including the abstract modifier in the class header.
- Any class that contains one or more abstract methods must be declared as abstract.
- In abstract classes (unlike interfaces), the abstract modifier must be applied to each abstract method.
- A class declared as abstract does not have to contain abstract methods.
- Abstract classes serve as placeholders in a class hierarchy.
- If a child of an abstract class does not give a definition for every abstract method that it inherits from its parent, then the child class is also considered abstract.
- Note that it would be a contradiction for an abstract method to be modified as final or static.
- Because abstract methods have no implementation, an abstract static method would make no sense.
Homework:
Read pages 382 through 419 and do exercises MC 7.1 through 7.10 and SA 7.3 and 7.4
All source: Java Software Solutions by Lewis, Loftus and Cocking