Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                
0% found this document useful (0 votes)
4 views

Inheritance-in-Java12

Inheritance in Java allows one object to acquire properties and behaviors from a parent object, promoting code reusability. It includes terms like class, child class, and parent class, and supports various types of inheritance such as single, multilevel, and hierarchical. Benefits include code reusability, improved organization, polymorphism, and easier maintenance.

Uploaded by

rchy83194
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
4 views

Inheritance-in-Java12

Inheritance in Java allows one object to acquire properties and behaviors from a parent object, promoting code reusability. It includes terms like class, child class, and parent class, and supports various types of inheritance such as single, multilevel, and hierarchical. Benefits include code reusability, improved organization, polymorphism, and easier maintenance.

Uploaded by

rchy83194
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 7

Inheritance in Java

Inheritance in Java is a mechanism in which one object acquires all the


properties and behaviors of a parent object. It is an important part of
OOPs (Object Oriented programming system).
Why use inheritance in Java?
o For Code Reusability.

Terms used in Inheritance


o Class: A class is a group of objects which have common
properties. It is a template or blueprint from which objects are
created.
o Drive/Child Class: Subclass is a class which inherits the other
class. It is also called a derived class, extended class, or child
class.
o Base/Parent Class: Superclass is the class from where a subclass
inherits the features. It is also called a base class or a parent class.
o Reusability: As the name specifies, reusability is a mechanism
which facilitates you to reuse the fields and methods of the
existing class when you create a new class. You can use the same
fields and methods already defined in the previous class.

The syntax of Java Inheritance


1. class Subclass-name extends Superclass-name
2. {
3. //methods and fields
4. }

The extends keyword indicates that we are making a new class that
derives from an existing class. The meaning of "extends" is to increase
the functionality.
Java Inheritance

Programmer is the subclass and Employee is the superclass. The


relationship between the two classes is Programmer IS-A Employee. It
means that Programmer is a type of Employee.
File Name: Programmer.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);
}
}
Test it Now
Programmer salary is:40000.0
Bonus of programmer is:10000

Types of Inheritance in Java


1. Single inheritance
2. Multilevel inheritance
3. Hierarchical inheritance
4. Multilevel inheritance
5. Hybrid inheritance
On the basis of class, there can be three types of inheritance in java:
single, multilevel and hierarchical.
In java multiple and hybrid inheritance is supported through interface
only. We will learn about interfaces later.

Note: Multiple inheritances is not supported in Java through class.


When one class inherits multiple classes, it is known as multiple
inheritances. For Example:
1) Single Inheritance
When a class inherits another class, it is known as a single inheritance.
In the example given below, Dog class inherits the Animal class, so
there is the single inheritance.
File: single
class Animal{
Void eat( )
{System.out.println("eating..."); }
}
class Dog extends Animal
{
void bark( )
{System.out.println("barking...");}
}
class single {
public static void main(String args[]){
Dog d=new Dog();
d.bark();
d.eat();
}}
Output:
barking...
eating...
2) Multilevel Inheritance Example
When there is a chain of inheritance, it is known as multilevel
inheritance. As you can see in the example given below, BabyDog class
inherits the Dog class which again inherits the Animal class, so there is
a multilevel inheritance.
File: multilevel
class Animal{
void eat()
{System.out.println("eating...");}
}
class Dog extends Animal
{
void bark()
{System.out.println("barking...");}
}
class BabyDog extends Dog
{
void weep()
{System.out.println("weeping...");}
}
class multilevel{
public static void main(String args[])
{
BabyDog d=new BabyDog();
d.weep();
d.bark();
d.eat();
}}
Output:
weeping...
barking...
eating...
3) Hierarchical Inheritance Example
When two or more classes inherit a single class, it is known
as hierarchical inheritance. In the example given below, Dog and Cat
classes inherits the Animal class, so there is hierarchical inheritance.
File: hierarchical
class Animal{
void eat(){System.out.println("eating...");}
}
class Dog extends Animal{
void bark(){System.out.println("barking...");}
}
class Cat extends Animal{
void meow(){System.out.println("meowing...");}
}
class hierarchical{
public static void main(String args[]){
Cat c=new Cat( );
c.meow();
c.eat();
//c.bark();// C.T.Error
}}
Output:
meowing...
eating...

Benefits of Inheritance
Inheritance offers several advantages, including:
Code Reusability: Inherited members from a superclass can be reused
in subclasses, reducing redundant code and promoting a modular
approach to software development.
Hierarchical Organization: Inheritance facilitates the creation of well-
structured class hierarchies, improving code readability and
maintainability.
Polymorphism: Subclasses can override superclass methods, allowing
for polymorphic behavior, where methods can behave differently
based on the object type at runtime.
Easier Maintenance: Changes made to a superclass automatically
propagate to its subclasses, ensuring consistency and simplifying
maintenance efforts.

You might also like