What will be the output of the following Java code?
class A
{
public int i;
private int j;
}
class B extends A
{
void display()
{
super.j = super.i + 1;
System.out.println(super.i + ” ” + super.j);
}
}
class inheritance
{
public static void main(String args[])
{
B obj = new B();
obj.i=1;
obj.j=2;
obj.display();
}
}
a) 2 2
b) 3 3
c) Runtime Error
d) Compilation Error
Answer: d
Explanation: Class contains a private member variable j, this cannot be inherited by subclass B and does not have access to it.
output:
Exception in thread “main” java.lang.Error: Unresolved compilation problem:
The field A.j is not visible
Related Posts
Which of these constructors is used to create an empty String object?
Which of these method of class String is used to extract a single character from a String object?
Which of this method of class String is used to obtain a length of String object?
Which of these operators can be used to concatenate two or more String objects?
Which of these class is superclass of String and StringBuffer class?
Does Java support multiple level inheritance?
What would be the result if a class extends two interfaces and both have a method with same name and signature? Lets assume that the class is not implementing that method.
Join The Discussion