Bug

李拜天不上班. 2021-03-26 01:34:21
请假大佬,这里判断user为空后,为啥不执行下面的if语句 而直接结束程序显示空指针异常
...全文
494 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
  • 打赏
  • 举报
回复
谢谢各位,明白了
自然80 2021-04-06
  • 打赏
  • 举报
回复
System.out.println(user) 等价于 System.out.println(user.toString()) 你想user都空了,toString()方法能正确么。
qq_41184054 2021-04-06
  • 打赏
  • 举报
回复
额,打个断点debug一下不就看出来了
发啊发程序猿 2021-04-01
  • 打赏
  • 举报
回复
空的user就走里面的逻辑了,都没有new 怎么set,好家伙写反了吧。
Timor_D 2021-04-01
  • 打赏
  • 举报
回复
这个时候就是该去学debug的用法了
Java全栈路线 2021-03-27
  • 打赏
  • 举报
回复
null表示没有这个对象,他的指针指向了一个空的地址。你对一个不存在的对象去获取他的属性那肯定会报错的。用System.out.println()能打印是因为他内部有做封装才能给你在控制台中打印一个字符串null出来
明白畅达 2021-03-26
  • 打赏
  • 举报
回复
user=null然后执行到null.username直接空指针结束了
鱿鱼ing 2021-03-26
  • 打赏
  • 举报
回复
判断错了 不等于 if(user !=null)
杀猪剑客 2021-03-26
  • 打赏
  • 举报
回复
执行了,只是第二行(user.setUsername(name)空指针异常)。
java竹雨 2021-03-26
  • 打赏
  • 举报
回复
都为null,怎么会有username,你应该先示例化user再setUsername

67,535

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧