The abstract modifier identifies abstract classes and methods.
abstract methods must be implemented by a subclass, so they must be inheritable.
abstract methods cannot be private.
abstract methods cannot be final.
abstract methods may have parameters, a return type, and optional throws clause, but are not implemented.
abstract methods end in a semicolon-no curly braces.
The first nonabstract class to extend an abstract class must implement all of the abstract class' abstract methods.
An abstract class cannot be instantiated.
A single abstract method in a class means the whole class must be abstract.
An abstract class can have both abstract and nonabstract methods.
abstract class AbstractClass {
abstract void method1();
abstract String method2(Object obj) throws java.io.IOException;
abstract int method3(long l);
abstract boolean method4();
}