Inheritance, implementing inheritance, interface inheritance, JAVA Programming

Assignment Help:

 

Inheritance - is the inclusion of state and behavior of a base class in a derived class so that they are accessible in that derived class. The key benefit of Inheritance is that it gives the formal mechanism for

code reuse. Any shared piece of business logic may be moved from the derived class into the base class as part of refactoring method to improve maintainability of your code by avoiding code duplication. The existing class is called the superclass and the derived class is defined the subclass. Inheritance may also be illustrate as the process whereby one object requires characteristics from one or more other objects the similar way children accepts characteristics from their parents. There are basically two types of inheritances:

 

1. Implementation inheritance: You will extend an application's functionality by reusing functionality in the parent class by extending all or some of the operations already implemented. In Java, you can only add from one superclass. Implementation inheritance promotes reusability but improper use of class inheritance can gives programming nightmares by dividing encapsulation and building future changes a problem. With implementation inheritance, the subclass becomes hardly coupled with the superclass. This will build the design fragile because if you need to change the superclass, you have to know all the details of the subclasses to avoid breaking them. So when using implementation inheritance, make sure that the subclasses relay only on the nature of the superclass, not on the actual implementation.

 

2. Interface inheritance: That is also known as subtyping. Interfaces give a mechanism for specifying a relationship between otherwise unrelated classes, typically by specifying a set of common methods each implementing class must obtain. Interface inheritance provides the design concept of program to interfaces not to implementations. This also reduces implementation dependencies or the coupling between systems. In Java, you will implement any number of interfaces. This is more flexible and reliable than implementation inheritance because it won't restrict you into specific implementations which build subclasses difficult to maintain. So care could be taken not to divide the implementing classes by modifying the interfaces.

 


Related Discussions:- Inheritance, implementing inheritance, interface inheritance

Write a short note on image preloading process, Write a short note on image...

Write a short note on image preloading process? The primary use of image preloading procedure is to download the image within the cache before it is actually required to displa

What is xmlbeanfactory, BeanFactory has many executions in Spring. But one ...

BeanFactory has many executions in Spring. But one of the most useful one is org.springframework.beans.factory.xml.XmlBeanFactory, which loads its beans based on the definitions ha

Explain jar archives, Explain JAR Archives ? HTTP 1.0 uses a separate ...

Explain JAR Archives ? HTTP 1.0 uses a separate connection for every request. When you're downloading several small files, the time required to set up and tear down the connec

What is struts framework, Struts framework is an open-source framework for ...

Struts framework is an open-source framework for producing the web applications in Java EE, based on MVC-2 architecture. It uses and extends the Java Servlet API. Struts are robust

Want a page to store emails when click as save, Want a page to store emails...

Want a page to store emails when click as save, then pass along to another page with the emails in the URL Project Description: I have a page that populates with listing; the

Compare an abstract class and an interface , You want the base class to rep...

You want the base class to represent only an interface for its derived classes. That means, you don't want anyone to actually instantiate an object of the parent class. You only

Agile software development processes, Agile software development process is...

Agile software development process is receiving popularity  and  momentum  across organizations. Highest priority is to satisfy the end user. Welcome requirement modifie

How is method overriding different from method overloading, How is method o...

How is method overriding different from method overloading? Overriding involves the creation of two or more concepts with the same name and same signature in different classes

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd