An abstract class is simply a class that can't be instantiated. It can have anything a normal class can have (fields, non-abstract methods, etc.), as well as can have abstract methods. Most often...