package Lect32Inheritance3; public class Overload { public int maximum(int x, int y) { System.out.println("Version 1"); return x > y ? x : y; } public int maximum(int x, int y, int z) { System.out.println("Version 2"); int t = maximum(x, y); return maximum(t,z); } public double maximum(double x, double y) { System.out.println("Version 3"); return x > y ? x : y; } // Version 3 or Version 4 can appear but not both // int maximum(double x, double y) { // System.out.println("Version 4"); // return (int) (x > y ? x : y); // } public static void main(String[] args) { Overload overload = new Overload(); int x=10, y=20; System.out.println(overload.maximum(x,y)); System.out.println("============="); double a=5, b=16; System.out.println(overload.maximum(a,b)); System.out.println("============="); System.out.println(overload.maximum(x,y,4)); } }