Thursday, 13 August 2015

Java Tutorial : Inheritance in Java Example

Enjoying This Tutorial?

Subscribe to Ram N Java for more easy, step-by-step Java tutorials!

Subscribe on YouTube

What is Inheritance in Java?

Inheritance is one of the core Object-Oriented Programming (OOP) concepts in Java. It allows one class to inherit properties (fields) and behaviors (methods) from another class.

By using the extends keyword, you establish an "IS-A" relationship between classes. This promotes clean architecture and code reusability.

Superclass vs. Subclass

  • Superclass (Parent Class): The class whose features are inherited. In our example, Employee is the superclass.
  • Subclass (Child Class): The class that inherits features from the superclass. In our example, SoftwareEngineer is the subclass.

Practical Example: Employee & SoftwareEngineer

A SoftwareEngineer is an Employee. Because SoftwareEngineer extends Employee, an instance of SoftwareEngineer can directly access the parent class properties like salary and methods like run() and walk(), along with its own unique property bonus and method talkAboutJava().

Key Takeaways

  • Use the extends keyword to implement inheritance in Java.
  • Child classes automatically acquire accessible fields and methods from the parent class.
  • Inheritance eliminates code redundancy and improves maintainability.

Recommended Tutorials from Ram N Java


Click here to watch in Youtube : 
https://www.youtube.com/watch?v=x8y_2Gkn-N8&list=UUhwKlOVR041tngjerWxVccw

Click the below Image to Enlarge

Employee.java
/**
 * Employee class is the Super class.
 */
public class Employee
{
    int salary = 50000;

    public void run()
    {
        System.out.println("Can run");
    }

    public void walk()
    {
        System.out.println("Can Walk");
    }

}
SoftwareEngineer.java
/**
 * SoftwareEngineer class is the sub class which
 * extends Employee Super class.
 */
public class SoftwareEngineer extends Employee
{
    int bonus = 30000;
    
    public void talkAboutJava()
    {
        System.out.println("Can talk about Java");
    }
}
InheritanceExample.java
public class InheritanceExample
{
    public static void main(String[] args)
    {
        SoftwareEngineer softwareEngineer = new SoftwareEngineer();

        /*
         * SoftwareEngineer object can access the field and methods of own class
         * as well as of Employee class i.e. code reusability.
         */

        System.out.println("Properties");
        System.out.println("-----------------");
        System.out.println("SoftwareEngineer salary is:"
                + softwareEngineer.salary);

        System.out.println("Bonus of SoftwareEngineer is:"
                + softwareEngineer.bonus);

        System.out.println("\nBehaviours");
        System.out.println("-----------------");
        softwareEngineer.run();
        softwareEngineer.walk();
        softwareEngineer.talkAboutJava();

    }

}
Output
Properties
-----------------
SoftwareEngineer salary is:50000
Bonus of SoftwareEngineer is:30000

Behaviours
-----------------
Can run
Can Walk
Can talk about Java
To Download InheritanceDemoExampleApp Project Click the below link
https://sites.google.com/site/javaee4321/java/InheritanceDemoExampleApp.zip?attredirects=0&d=1

See also:

  • All JavaEE Viedos Playlist
  • All JavaEE Viedos
  • All JAVA EE Links
  • Servlets Tutorial
  • All Design Patterns Links
  • JDBC Tutorial
  • Java Collection Framework Tutorial
  • JAVA Tutorial
  • No comments:

    Post a Comment

    Tutorials