DEV Community

silambarasan rajendran
silambarasan rajendran

Posted on

day-24: Java Inheritance Explained: Types, Usage & Examples

Java Inheritance
Java Inheritance is a fundamental concept in object-oriented programming that allows a new class to inherit properties and behaviors (fields and methods) from an existing class. This promotes code reusability and establishes a hierarchical relationship between classes.

Key Concepts
Superclass (Parent Class): The class whose properties and methods are inherited.
Subclass (Child Class): The class that inherits from the superclass.

Usage:
Inheritance is used to create a new class that is a type of an existing class. It helps in extending the functionality of a class without modifying it, thereby adhering to the Open/Closed Principle of software design.

Types of Inheritance:

public class Sivaji { public void acting() { System.out.println("Acting in Movies"); } private void agri() { System.out.println("Farmers"); } public void produce() { System.out.println("Producer"); } } public class Prabhu extends Sivaji { public static void main(String[] args) { Prabhu prabhu = new Prabhu(); prabhu.acting(); } //Overridden Method public void acting() { System.out.println("Acting in Movies, Ads"); } } public class VikramPrabhu extends Prabhu { public static void main(String[] args) { VikramPrabhu vikramPrabhu = new VikramPrabhu(); vikramPrabhu.acting(); vikramPrabhu.produce(); } public void acting() { System.out.println("Movies, Ads, Web Series"); } } public class AishwaryaPrabhu extends Prabhu { public static void main(String[] args) { AishwaryaPrabhu ap = new AishwaryaPrabhu(); ap.acting(); } } 
Enter fullscreen mode Exit fullscreen mode

extends - key word helps us to Inherit the properties.

Types of Inheritances
1). Single inheritance:
Sivaji -> Prabhu

2). Multi-Level Inheritance:
Sivaji -> Prabhu -> VikramPrabhu (or)
Sivaji -> Prabhu -> AishwaryaPrabhu

3). Hierarchical Inheritance: one parent with more than one child class
Prabhu -> VikramPrabhu
-> AishwaryaPrabhu

4). Hybrid Inheritance: Combining more than one type of Inheritance.
[Single + Hierarchical]
[Multilevel + Hierarchical]

5). Java is not supporting Multiple Inheritance, directly.

Ref: https://www.datacamp.com/doc/java/inheritance

Top comments (0)