请输出一下程序的输出结果,如果有其他问题请说明原因.import java.util.List;/**
 * @author Administrator
 */
public class GenericTypes {
public static void method(List<String> list){
System.out.println("invoke string method!");
}
public static void method(List<Integer> list){
System.out.println("invoke Integer method!");
}
public static void main(String[] args) {
List<Integer> list=new ArrayList<Integer>();
List<String> list2=new ArrayList<String>();
System.out.println(GenericTypes.method(list));
System.out.println(GenericTypes.method(list2));
}
}

解决方案 »

  1.   

    嗯,但是这部分内容在哪里有说明呢?我是最近看jvm 的时候才知道的。
      

  2.   

    我记得thinking in java的泛型部分有讲到,你面试的题目贴出来让我也做一做咋样~~
      

  3.   

    好久之前的了,当初面试的时候笔试题基本记不起来了。
    有一道题是记得的,问了我第N大的问题。
    输入N个数,找出第m大的数。
      

  4.   

    http://www.anyang-window.com.cn/quotthis-is-not-a-genericquot-bruce-eckel-eyes-of-the-generic-java/这里说道java的泛型是伪泛型,在编译后泛型信息会被消除,所以
     public static void method(List<String> list){
            System.out.println("invoke string method!");
        }
        public static void method(List<Integer> list){
            System.out.println("invoke Integer method!");
        }
    这两个方法变成    public static void method(List list)。导致编译不通过。两个方法是一样的。