Inheritance
suggest changeIntroduction
Inheritance is a basic object oriented feature in which one class acquires and extends upon the properties of another class, using the keyword extends. For Interfaces and the keyword implements, see interfaces.
Syntax
- class ClassB extends ClassA {…}
- class ClassB implements InterfaceA {…}
- interface InterfaceB extends InterfaceA {…}
- class ClassB extends ClassA implements InterfaceC, InterfaceD {…}
- abstract class AbstractClassB extends ClassA {…}
- abstract class AbstractClassB extends AbstractClassA {…}
- abstract class AbstractClassB extends ClassA implements InterfaceC, InterfaceD {…}
Remarks
Inheritance is often combined with generics so that the base class has one or more type parameters. See Creating a Generic Class.
Implementing multiple interfaces
Declaring and Implementing an Interface
Using final to restrict inheritance and overriding
The Liskov Substitution Principle
Abstract class and Interface usage Is-a relation vs Has-a capability
Inheritance and Static Methods
Narrowing and Widening of object references
Found a mistake? Have a question or improvement idea?
Let me know.
Table Of Contents