开发者社区 问答 正文

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不是已经分配了堆内存吗,为什么结果会出现空指针错误?

展开
收起
蛮大人123 2016-06-08 10:53:34 2364 分享 版权
1 条回答
写回答
取消 提交回答
  • 我说我不帅他们就打我,还说我虚伪

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

    2019-07-17 19:31:23
    赞同 展开评论
问答分类:
问答地址: