Inheritance enables you to extend the functionality of an existing class.
In inheritance, a superclass or a parent class is the one from which another class inherits attributes and behavior. A subclass or child class is a class that inherits attributes and behavior from a superclass.
Note
Th object class is called as a supermost class. Inheritance is applicable only for nonstatic classes.
The following is an example of inheritance in a Java program:
package MyFirstPackage; class SampleClass1 { void sampleMethod(){ System.out.println("executing sample method"); } } class SampleClass2 extends SampleClass1 { void sampleMethod1(){ System.out.println("executing sample method 2"); } } public class Inhertance { public static void main(String[] args) { SampleClass2 methodcall = new SampleClass2(); methodcall.sampleMethod1(); methodcall.sampleMethod(); } }
The output of the preceding code will be as follows:
executing sample method 2 executing sample method
The following is an example of an abstract class in a Java program:
package MyFirstPackage; abstract class sample_abs { abstract void abstr_method (); abstract void abstr_method1 (); abstract void abstr_method2 (); abstract void abstr_method3 (); abstract void abstr_method4 (); void nonabstr (){ } } abstract class sample_abs1 extends sample_abs { void abstr_method () { } void abstr_method1 () { } void abstr_method2 () { } void abstr_method3 () { } public class AbstractClass extends sample_abs1 { void abstr_method1 () { } void abstr_method4 () { } public static void main(String[] args) { System.out.println("Abstract class demo"); } }
The output will be as follows:
Abstract class demo