Overloading vs. Overriding class A {} class B extends A {} class C extends B {} public class Example1 { public String m1
Posted: Sun May 15, 2022 10:17 am
CAN SOMEONE EXPLAIN (IN DETAIL) WHY THE OUTPUT IS AAA?
Overloading vs. Overriding class A {} class B extends A {} class C extends B {} public class Example1 { public String m1(A 0) { return "A"; } public String m1(B 0) { return "B"; } public String m1(Co) { return "C"; } II void foo() { A [] arr = { new A(), new B(), new C() }; for (int i = 0; i < arr.length; i++) { System.out.print(m1(arr) + "); } } public static void main(String[] args) { new Example1().foo(); } } Output? "ABC" or "AAA"
Overloading vs. Overriding class A {} class B extends A {} class C extends B {} public class Example1 { public String m1(A 0) { return "A"; } public String m1(B 0) { return "B"; } public String m1(Co) { return "C"; } II void foo() { A [] arr = { new A(), new B(), new C() }; for (int i = 0; i < arr.length; i++) { System.out.print(m1(arr) + "); } } public static void main(String[] args) { new Example1().foo(); } } Output? "ABC" or "AAA"