奔腾的野马 2016-04-01 13:35 采纳率: 50%
浏览 2223
已采纳

Java泛型问题,空指针问题

程序如下:public class GenericsDemo11{
public static void main(String []agrs){
Info i1=new Info();

if(i1!=null){
        System.out.println("不为null");
    }
    fun(i1);
}
public static void fun(Info<? super String> info){
    System.out.println(info);
}

}
程序调用fun方法时出现空指针,为什么?i1不是已经分配了堆内存吗,为什么结果会出现空指针错误?

  • 写回答

3条回答 默认 最新

  • threenewbee 2016-04-01 14:16
    关注

    Info不是string的派生类,所以调用fun的时候强制转换失败,info为null

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 已采纳回答 8月25日