🎴 Flashcard Mode
Java Programming Fundamentals and Advanced Concepts
Card1 / 18
Mastered0
Review0
QuestionClick to flip
class c1 { public void m1() { System.out.println("m1 method in C1 class"); } } class c2 { public c1 m1() { return new c1(){ public void m1() { System.out.println("m1 mehod in anonymous class"); }};} public static void main(String a[]) { c1 ob1 =new c2().m1(); ob1.m1(); }}
AnswerClick to flip back
A
prints m1 method in anonumous class
💡 Explanation:
The m1() method in c2 returns an anonymous subclass of c1 that overrides the m1() method. When ob1.m1() is called on this returned object, Java's dynamic dispatch invokes the overridden version in the anonymous class, printing 'm1 mehod in anonymous class' (note the typo 'mehod').