@@ -0,0 +1,437 @@
+//According to java specs, in case of overloading, compiler picks the most specific function.%0A//Obviously String class is more specific that Object class, hence it will print %E2%80%9CString impl%E2%80%9D.%0A%0Aclass OverloadingTrick %7B%0A%09public static void main(String%5B%5D args) %7B%0A%09%09method(null);%0A%09%7D%0A%09public static void method(Object o) %7B%0A%09%09System.out.println(%22Object impl%22);%0A%09%7D%0A%09public static void method(String s) %7B%0A%09%09System.out.println(%22String impl%22);%0A%09%7D%0A%7D%0A

Create OverloadingTrick.java