Method Overloading

7. Program

//Find what it gives Compiletion Error / Compiletion Successfully / Output ?

class G { public static void main(int a, int b) { System.out.println(a); System.out.println(b); } public static void main(int a) { System.out.println(a); } public static void main(String[] main) { System.out.println("main()"); main(10); main(10, 20); } }

8. Program

//Find what it gives Compiletion Error / Compiletion Successfully / Output ?

class H { void test() { System.out.println("from test()"); } double test(int d) { return d; } public static void main(String[] args) { G g1 = new G(); System.out.println( g1.test() ); System.out.println("Done"); } }

9. Program

//Find what it gives Compiletion Error / Compiletion Successfully / Output ?

class I { void test(int a,long b) { System.out.println("a method invoked"); } void test(long a,int b) { System.out.println("b method invoked"); } public static void main(String args[]) { I i1 = new I(); i1.test(20,20); } // now ambiguity //because compiler can't understand which test is called }

Page....