hgq0916
奔腾的野马
采纳率65.9%
2016-04-01 13:35 阅读 2.1k

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条回答 默认 最新

  • caozhy 从今以后生命中的每一秒都属于我爱的人 2016-04-01 14:16

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

    点赞 2 评论 复制链接分享
  • caozhy 从今以后生命中的每一秒都属于我爱的人 2016-04-01 14:17

    晕,看错了,csdn的代码混乱,你的泛型参数都没有显示出来。请你贴出Info类的实现看下。

    点赞 1 评论 复制链接分享
  • qq_26431469 听风暖 2016-04-05 06:08

    Info不是string的派生类, 注意哦

    点赞 评论 复制链接分享

相关推荐