/****************************************************************************** * Compilation: javac Overloaded.java * Execution: java Overloaded * ******************************************************************************/ public class Overloaded { public static void f(int x, double y) { StdOut.println("f(int, double)"); } public static void f(double x, int y) { StdOut.println("f(double, int)"); } public static void f(double x, double y) { StdOut.println("f(double, double)"); } public static void main(String[] args) { f(1.0, 17); f(1, 17.0); f(1.0, 17.0); //// f(1, 17); // compile-time error: reference to f is ambiguous } }