all are saying java doesn't support multiple inheritance but
by default Object class is super class for all the user
defined classes and we can extend atmost one class so each
class can extend more than one class so java supports
multiple inheritance?i am confused with this,pls any one
explain me.
Answers were Sorted based on User's Feedback
logic is simple differnet
imagine you create a class
Class A
{
A()
{
super()
}
}
ya this class extends Object class implicitly
and it will definitely call the Object class constructor
but if you extends the Class A explicitly
then what will happen
class A0
{
AO()
{
super();
}
}
class A extends AO
{
A()
{
super();
}
}
}
so what happen because the Object class Replace by this
immediate super class which is in your Apis which you build
in your project
now the class AO is responsible to implicit extends Object
class
so what is the mean that Object inheritence is passeddown
through your Immediate super class
so don't say that implicit inheritence creete the mulitiple
inherritence
"because in java is not allowed beacaus so ambiguity
when one class extends Two classes and both have same method
signature
then which method will call
Amit singh
amitsing2008@gmail.com
amit09mca
| Is This Answer Correct ? | 13 Yes | 0 No |
Hello Mr.Kartik Naidhruva.I m not asking this is foolish or
not.i jus asking to explain.even though the question is
foolish don't answer like fool.jus explain how my question
is wrong that's better.jus explain about Object class
| Is This Answer Correct ? | 4 Yes | 0 No |
Answer / biswajit singh
I completely agree with Amit Singh. Excellent example.
| Is This Answer Correct ? | 2 Yes | 0 No |
Answer / kartik naidhruva
Its foolish to say a class extends more than one class...
Who told u that!!!!
inorder to implement multiple inheritance in java we use
INTERFACES....
with the help of interfaces we can Partially implement
Multiple inheritance
| Is This Answer Correct ? | 2 Yes | 6 No |
what is Vector class?
Hai all I want to print given array in reverse order Ex: int a[]={1,2,3,4,5};display this array in reverse order.
What are the differences between heap and stack memory?
Why null interfaces are used in Java?
How will you invoke any external process in java?
How static variable work in java?
Question 7 [8] Consider the following class and answer the questions below it: public class StackWithGuard extends Stack { public StackWithGuard(int size) { super(size); } synchronized public boolean isEmpty() { return super.isEmpty(); } synchronized public boolean isFull() { return super.isFull(); } synchronized public int getSize() { return super.getSize(); } synchronized public void push(Object obj) { try { while (isFull()) { wait(); } } catch (InterruptedException e) {} super.push(obj); COS2144/102 11 notify(); } synchronized public Object pop() { try { while (isEmpty()) { wait(); } } catch (InterruptedException e) {} Object result = super.pop(); notify(); return result; } public static void main(String args[]) { StackWithGuard stack = new StackWithGuard(5); new Producer(stack, 15).start(); new Consumer(stack, 15).start(); } } Note: The Stack class is provided in the Appendix. Note also: The following questions all refer to the pop() method of the StackWithGuard class given above. 7.1 What does the synchronized keyword ensure for this method? (2) 7.2 Why is a while loop used to test whether the stack is empty? In other words, why wouldn't the following if statement be sufficient? if (isEmpty()) { wait(); } (2) 7.3 Why is the result of popping (provided by the inherited pop() method) stored in a temporary variable? In other words, why wouldn't the following statement be sufficient? return super.pop(); (2) 7.4 Why is the while loop placed in a try-catch structure? (2) Appendix The LinkedQueue class: public class LinkedQueue implements Queue { private Node first, last; private int count; public LinkedQueue() { first = last = null; count =0; } public int size() { return count; } public boolean isEmpty() { return (count == 0); 12 } public void enqueue(Object o) { Node node = new Node(); node.element = o; node.next = null; node.prev = last; if (last != null){ last.next = node; } else { last = first = node; } last = node; count++; } public void dequeue() { if ((first!= null) & (first.next!=null)) { first = first.next; first.prev = null; count--; } else { first = last = null; count--; } } public Object front() { return first; } } class Node { Object element; Node next, prev; } The Stack class: public class Stack { protected Object rep[]; protected int top = -1; protected int size = 0; protected int count = 0; public Stack(int size) { if (size > 0) { this.size = size; rep = new Object[size]; } } public boolean isFull() { return (count == size); } public boolean isEmpty() { return (count == 0); } public int getSize() { return size; } public void push(Object e) { if (e != null && !isFull()) { COS2144/102 13 top++; rep[top] = e; count ++; } } public Object pop() { Object result = null; if (!isEmpty()) { result = rep[top]; top--; count--; } return result; } }
Why Java is called as purely platform independent..? Explain briefly..dont Give regular answers Explain with your own example..?
Is java map thread safe?
Differentiate storage classes on the basis of their scope?
How can u increase the heap size in the memory?
why pointer is not used in java?