Inheritance in Java
Inheritance in java is a mechanism in which one object acquires all the properties and behaviors of parent object. The idea behind inheritance in java is that you can create new classes that are built upon existing classes. When you inherit from an existing class, you can reuse methods and fields of parent class, and you can add new methods and fields also Inheritance represents the IS-A relationship, also known as parent-child relationship.Why use inheritance in java
Syntax:
class Subclass-name extends Superclass-name { //methods and fields }
Example
class Person { float salary=80000.0f; } class Servant extends Person { int bonus=10000.0f; public static void main(String args[]) { Servant S=new Servant(); System.out.println("Servant salary is:"+S.salary); System.out.println("Bonus of Servant is:"+S.bonus); } }
Output:
Servant salary is: 80000 Bonus of Servant is: 10000
Types of inheritance in java
On the basis of class, there can be three types of inheritance in java: single, multilevel and hierarchical. In java programming, multiple and hybrid inheritance is supported through interface only
Multiple inheritance is not supported in java through class.
When a class extends multiple classes i.e. known as multiple inheritance
Example:

Single Inheritance
Example:
File: TestInheritance.javaclass Person{ void eat() { System.out.println("person is eating"); } } class Child extends Person { void walks() { System.out.println("Child is walking"); } } class TestInheritance{ public static void main(String args[]){ Child c = new Child(); c.walks(); c.eat(); }}
Output:
Person is eating Child is walking
Multilevel Inheritance
Example:
File: TestInheritance1.javaclass Person{ void eat() { System.out.println(" Person is eating"); } } class Child extends Person{ void walks() { System.out.println("Child is walking"); } } class BabyChild extends Child{ void Laugh() { System.out.println("BabyChild is Laughing"); } } class TestInheritance1{ public static void main(String args[]){ BabyChild b=new BabyChild(); b.Laugh(); b.walks(); b.eat(); }}
Output:
Person is eating Child is walking BabyChild is Laughing
Hierarchical Inheritance
Example:
file:TestInheritance2.javaclass Person{ void eat() { System.out.println(" Person is eating"); } } class Child extends Person{ void walks() { System.out.println("Child is walking"); } } class BabyChild extends Child{ void Laugh() { System.out.println("BabyChild is Laughing"); } } class TestInheritance1{ public static void main(String args[]){ BabyChild b=new BabyChild(); b.Laugh(); //b.walks(); //Comment here b.eat(); }}
Output:
Person is eating BabyChild is Laughing