Golgappa.net | Golgappa.org | BagIndia.net | BodyIndia.Com | CabIndia.net | CarsBikes.net | CarsBikes.org | CashIndia.net | ConsumerIndia.net | CookingIndia.net | DataIndia.net | DealIndia.net | EmailIndia.net | FirstTablet.com | FirstTourist.com | ForsaleIndia.net | IndiaBody.Com | IndiaCab.net | IndiaCash.net | IndiaModel.net | KidForum.net | OfficeIndia.net | PaysIndia.com | RestaurantIndia.net | RestaurantsIndia.net | SaleForum.net | SellForum.net | SoldIndia.com | StarIndia.net | TomatoCab.com | TomatoCabs.com | TownIndia.com
Interested to Buy Any Domain ? << Click Here >> for more details...

Advantages of Inheritance in java.

Answer Posted / prema g.v

Inheritance is a object oriented concept where in the subclass acquires all the properties of superclass.

The main use of inheritance are,
1. Code reuse.
2. Code enhancement- built on what you have, without altering the present functionality.

For example: Consider the Class animal,

class animal {
String name;
int size;

public void sleep() {
System.out.println("Animal is sleeping");
}

public void eat() {

System.out.println("animal is eating");
}
}

In this example the class animal has a state name and size and behaviors sleep(), eat().

Now I will create a subclass dog,

class dog extends animal {
int legs;

public void bark() {

System.out.println("Dog barking");
}
}

class cat extends animal {
int legs;

public void make_sound() {

System.out.println("cat making sound miyo miyo");
}
}

Here extends key word indicates inheritance.

The subclasses dog and cat now acquires the properties of class animal i,e the class dog and animal has got state size, name and behaviors sleep(), eat() along with their
own state(instance variable) and behavior(method).

Now if we want to invoke sleep() method in the class dog
and animal, we can directly invoke by creating dog and cat
class objects. It means you need not write functionality of
sleep() method in dog and class. We are re-using the code
of animal class sleep() method by using inheritance concept.
Suppose if we did not have the concept of inheritance, we
need to write sleep() method functionality in cat and dog
class as well, which is something not good.

Suppose if we want dog to sleep differently than animal,
we can also provide our own implementation just by
overriding sleep() method in dog class i,e we can enhance the code of sleep() method in dog class. To override methods
in subclass we should maintain same signature as that of
super class.

i,e in dog class,

public void sleep() {
System.out.println("Dog sleeping with its eyes closed");
System.out.println("dog is sleeping");
}

Here just we are building on what we have, nothing on enhancement.

When ever we encounter IS-A relationship, then its shows inheritance. Example Cat is an animal. Lilly is a flower.

Super classes indicates generalized behavior. Subclasses indicates specialized behavior.

i.e the above example indicates all animal will sleep and
eat- indicates generalized behavior. But only dark can
bark, this behavior is only related to dog.

All generalized behavior we can put it in superclass and
can use it in subclasses -again reuse of code.

Is This Answer Correct ?    5 Yes 1 No



Post New Answer       View All Answers


Please Help Members By Posting Answers For Below Questions

Which collection allows duplicate values in java?

932


What is the program development process?

936


Can we have any code between try and finally blocks?

977


Draw a UML class diagram for the code fragment given below: public class StringApplet extends Applet { private Label sampleString; private Button showTheString; private ButtonHandler bHandler; private FlowLayout layout; public StringApplet() { sampleString = new Label(" "); showTheString = new Button (" Show the String"); bHandler = new ButtonHandler(); layout = new FlowLayout(); showTheString.addActionListener(bHandler); setLayout(layout); add(sampleString); add(showTheString); } class ButtonHandler implements ActionListener { public void actionPerformed(ActionEvent e) { samplestring.setText("Good Morning"); } } } Note: The methods need not be indicated on the diagram.

2005


Can we clone singleton object?

1019


What does s mean in regex?

969


I want to persist data of objects for later use. What is the best approach to do so?

1014


How to print nodes of a Binary tree?

2210


What is OOP Language?

1027


What is method overriding in java ?

1134


How we can declare a static variable?

1080


What is java dot?

892


What is the difference between the file and randomaccessfile classes?

1047


Explain the different forms of polymorphism?

958


why doesn't java run on all platforms?

989