Forums
New posts
Search forums
Members
Current visitors
Log in
Register
What's new
Search
Search
Search titles only
By:
New posts
Search forums
Menu
Log in
Register
Install the app
Install
Forums
Archive
Archive
Java
MULTIPLE INHERITANCE IN JAVA?
JavaScript is disabled. For a better experience, please enable JavaScript in your browser before proceeding.
You are using an out of date browser. It may not display this or other websites correctly.
You should upgrade or use an
alternative browser
.
Reply to thread
Message
[QUOTE="nirmal, post: 614920"] hi everyone this is my first post since i joined the group a week ago. I m working with java for a year now since i come from a C++ background i can't help comparing the two languages. While studying for java i found many books stating that java does not support multiple inheritance i don't fully agree with this notion (please don't hate me for that). Though it is true that one cannot extend more than one class at a time which makes perfect sense since all the classes in java are derived from Object class and multiple extensions would cause multiple objects of Object to exist in the code which could be undesirable.However java could have provided a concept similar to virtual base classes in C++ but it would have to be implicit like the extension to the Object class and moreover multiple calls to the virtual base class's(Object) constructor would have to be avoided. (in C++ the compiler donot call the constructor of a virtual base class from immediate derivations rather it allows the class which is extending multiple derivations of the virtual base class to call its constructor directly, something which is not legal for ordinary base classes) .Java could not provide a solution like this since the only way to call the superclass constructor is by keyword super which can call the constructor of the immediate superclass only.So it is true that allowing multiple extensions would have caused more problems than it could solve.Still while creating patterns multiple inheritance is sometimes inevitable.The solution to this problem is interface.An interface in java is used to create a model of a class,it just declare the behaviour(methods) that a class must implement.It is worth noting that code reusabilty ,a criteria generally used to define inheritance,while implementing an interface is nil.That is why implementing an interface is not qualified as inheritance.However if you have ever indulged yourself in creating design patterns you would know that inheritance is more than just code reusability rather in my opinion code reusability is just a consequence of implementing inheritance in programming languages. Java allows a class to implement more than one interface in this way a class can implement 'behaviours' of multiple classes and thus to an extent solving the multiple inheritance problem(without providing code reusability). So the question is that is it alright to say that java does not support multiple inheritance? nirmal. [/QUOTE]
Verification
Post reply
Forums
Archive
Archive
Java
MULTIPLE INHERITANCE IN JAVA?
Top