Is multiple inheritance allowed in Java? Why ?
Answers were Sorted based on User's Feedback
Answer / midhun h kumar
No ...
Multiple inheritance is not allowed in Java...
but infact we can achieve the functionality using interfaces...
we can define interfaces and any class can implement these
interfaces..
a class can implement any number of interfaces but can
extend only one class..
thus we can achieve what we expect to get from multiple
inheritance thru interfaces...
| Is This Answer Correct ? | 10 Yes | 2 No |
Multiple inheritance is not allowed in java because it creates
DIAMOND PROBLEM.
DIAMOND PROBLEM: Suppose classes B and C extend A and
class D extends to both B and C(multiple inheritance). Now,
if D calls a method in A then it does not know from which
class it has to inherit(either B or C). This is called
diamond problem.
| Is This Answer Correct ? | 8 Yes | 1 No |
Answer / bhasker tiwari
All the answer given above are True .
but i would like to add few more.
Reasons are follows:
1.As java creates .class for each Java file.and As all java
files has there own variable and methods so incase of
Multiple inheritence all will mess up , so to avoid this
situation Java do not allow Multiple Inheritence.
2. the above discussed Diamond problem is also a Reason.
| Is This Answer Correct ? | 4 Yes | 2 No |
Answer / ravikiran(aptech mumbai)
Not in a direct manner we can achieve it with the help of
interfaces
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / karthik
"Can some one explain about this case.
-> A is a super class and B extends from A.
-> java.lang.Object is super class for all classes.
now in this case B extends from A and B extend from java.lang.Object(because is default super class) then it is multiple inheritence right? "
Mr Suresh Aelidhe,
If a class extends any other class then it wont extends Object class
| Is This Answer Correct ? | 1 Yes | 0 No |
Answer / suresh aelidhe
Can some one explain about this case.
-> A is a super class and B extends from A.
-> java.lang.Object is super class for all classes.
now in this case B extends from A and B extend from java.lang.Object(because is default super class) then it is multiple inheritence right?
| Is This Answer Correct ? | 1 Yes | 1 No |
Why do we use predicate in java?
Can you call one constructor from another if a class has multiple constructors?
how a programmer confirms that the data submitted has been succesfully inserted into the database(either oracle or my sql).. How a programmer confirm if there is any problem with the program he wrote for insertion... ANS:--- >executeupdate method is having boolean return type, if anything goes wrong in data insertion or data updation, it would return false. otherwise, if it successfully inserts data into the database, it would return true NOW HOW TO I CHECK IN MY DURING EXECUTION WHETHER IT RETURNS TRUE OR FALSE... WELL IT WILL DISPLAY ANY MESSAGE OR NOT
If you do not want your class to be inherited by any other class. What would you do?
What does substring mean?
what is java bean?where can we use it?
Where is the singleton class used?
What is difference between call by value and call by reference?
Is there any way to find whether software installed in the system is registered by just providing the .exe file? I have tried the following code but its just displaying the directory structure in the registry. Here the code : package com.msi.intaller; import java.util.Iterator; import ca.beq.util.win32.registry.RegistryKey; import ca.beq.util.win32.registry.RootKey; public class RegistryFinder { public static void main(String... args) throws Exception { RegistryKey.initialize(RegistryFinder.class.getResource("jRe gistryKey.dll").getFile()); RegistryKey key = new RegistryKey(RootKey.HKLM, "Software\\ODBC"); for (Iterator<RegistryKey> subkeys = key.subkeys(); subkeys.hasNext();) { RegistryKey subkey = subkeys.next(); System.out.println(subkey.getName()); // You need to check here if there's anything which matches "Mozilla FireFox". } } }
Can we have a try block without catch block?
How do you read a char in java?
In how many ways we can do synchronization in java?