Example Class

Animal
^
|
|
Dog
^
|
|
Husky

Each Class Described

Animal - This is the root of the four classes discussed here. It has the attributes and methods that all animals share hair, spine, 4 limbs, breathing, etc.

Dog - A subclass of Animal, as well as a superclass of Husky. This class inherits all the attributes/methods/traits of the class Animal, but it also extends/specializes Animal. These are not just any Animal, they are specifically dogs. Attributes and methods such as walking on four legs, covered in hair, barking, etc. are implemented within this class.

Husky - A subclass of Dog. This class inherits all of the attributes/methods/traits of the class Dog. By virtue of being a subclass of Dog, Husky also inherits all the attributes/methods/traits of the class Animal. Again it extends/specializes the class Dog, adding the attributes/methods of the specific type specific of Dog, a Husky. Such attributes/methods as thick fur, favorable to cold climates, very friendly, etc.

Blade - I have a cousin whose dog Blade is an instance of the type Husky.

Java Code
class Animal (extends java.lang.Object is implicit) {
  // ...  
}

class Dog extends Animal {
  // ...
}

class Husky extends Dog {
  // ...
}

Husky Blade = new Husky();