001 package generics; 002 003 public class Max { 004 005 public static <A extends Number, B extends Number, C extends Number> Number get( 006 A arg1, B arg2, C arg3) { 007 Number max = arg1; 008 if (max.doubleValue() < arg2.doubleValue()) 009 max = arg2; 010 if (max.doubleValue() < arg3.doubleValue()) 011 max = arg3; 012 return max; 013 } 014 015 public static void main(String[] args) { 016 017 Number no = Max 018 .get(new Integer(99), new Integer(109), new Integer(200)); 019 System.out.println(no); 020 Number no2 = Max.get(new Double(99), new Double(109), new Double(200)); 021 System.out.println(no2); 022 Number no3 = Max 023 .get(new Integer(999), new Double(109), new Double(200)); 024 System.out.println(no3); 025 } 026 }