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(); } }
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.
Top comments (0)