Bird
0
0

Consider this code:

hard📝 Application Q9 of 15
Java - Inheritance
Consider this code:
class A {
  int x = 5;
}
class B extends A {
  int x = 10;
  class C extends B {
    void print() {
      System.out.println(x);
      System.out.println(super.x);
      System.out.println(super.super.x);
    }
  }
}

Which statement about the use of super.super.x is correct?
Asuper.super.x accesses current class variable
Bsuper.super.x is invalid syntax in Java
Csuper.super.x accesses parent variable
Dsuper.super.x accesses grandparent variable
Step-by-Step Solution
Solution:
  1. Step 1: Understand super keyword limitations

    Java does not support chaining super like super.super.
  2. Step 2: Recognize invalid syntax

    Attempting super.super.x causes compile error.
  3. Final Answer:

    super.super.x is invalid syntax in Java -> Option B
  4. Quick Check:

    super.super is invalid in Java [OK]
Quick Trick: Java does not allow super.super chaining [OK]
Common Mistakes:
  • Assuming super.super accesses grandparent
  • Trying to chain super keywords
  • Confusing with other languages

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More Java Quizzes