Inheritance in java
- Inheritance: Inheritance can be defined as process in which one class (child class) can acquire properties (fields and methods) of another class (parent class).
- Parent Class: The class whose properties are inherited is called parent class or base class or super class.
- Child Class: The class which inherits properties of others is called child class or derived class or subclass.
Syntax of inheritance.
[java]public class Superclass_name
{
//methods and fields
}
public Subclass_name extends Superclass_name
{
//methods and fields
}[/java]
- Inheritance represents IS-A type relationship.
- Inheritance can be achieved in java by using of extends keyword.
- When extending a class, you can add new properties and methods, and you can change the behavior of existing methods.
Use of Inheritance
- You can declare a method with the same signature and write new code for it(Method Overriding)
- For Code Re-usability.
- The biggest advantage of Inheritance is that, code in base class need not be rewritten in the derived class.
Examples of Inheritance:
Example 1:
[java]public class Animal
{
}
public class Mammal extends Animal
{
}
public class Reptile extends Animal
{
}
public class Dog extends Mammal
{
}[/java]
Example 2:
[java]class Employee
{
float salary=40000;
}
class Programmer extends Employee
{
int bonus=10000;
public static void main (String args[])
{
Programmer p=new Programmer();
System.out.println("Programmer salary is:"+p.salary);
System.out.println ("Bonus of Programmer is:"+p.bonus);
}
}[/java]
Output
Programmer salary is:40000.0
Bonus of programmer is:10000
Types of inheritance java:
There are following types of inheritance:
- Single
- Multilevel
- Multiple
- Hierarchical
- Hybrid
Multiple inheritances is not possible in java.
- When we inherit properties of two or more classes or object in one class or object then it is called as Multiple Inheritance.
- But in java it is not supported.
- If we inherit properties of two or more classes then there will be ambiguity that which method should call.
- Compile time error occur
- Hence multiple inheritance is not possible in java.