Bird
0
0

Identify the problem in this C# code:

medium📝 Debug Q7 of 15
C Sharp (C#) - Inheritance
Identify the problem in this C# code:
class Base { public virtual void Display() { Console.WriteLine("Base Display"); } } class Derived : Base { public void Display() { Console.WriteLine("Derived Display"); } } class Program { static void Main() { Base b = new Derived(); b.Display(); } }
ADerived's Display() should use override keyword
BBase's Display() should not be virtual
CNo problem, output is "Derived Display"
DCompilation error due to missing base call
Step-by-Step Solution
Solution:
  1. Step 1: Check method overriding rules

    Derived's Display() hides Base's virtual method but lacks override keyword, so it is method hiding, not overriding.
  2. Step 2: Consequence of missing override

    Calling b.Display() calls Base's method because Derived's method does not override it properly.
  3. Final Answer:

    Derived's Display() should use override keyword -> Option A
  4. Quick Check:

    Override keyword needed for proper method override [OK]
Quick Trick: Use override keyword to properly override virtual methods [OK]
Common Mistakes:
MISTAKES
  • Missing override keyword causes method hiding
  • Assuming virtual keyword is optional in base
  • Expecting derived method to run without override

Want More Practice?

15+ quiz questions · All difficulty levels · Free

Free Signup - Practice All Questions
More C Sharp (C#) Quizzes