Exception in thread "main" java.lang.NullPointerException at A.main(A.java:8)

maybelle 2009-07-09 11:52:27
public class A
{
B b1;
B b2=new B();
public static void main(String args[])
{
A a1=new A();
System.out.println(a1.b1.x); //这一行出错了
System.out.println(a1.b2.x);
}
}

class B
{
int x=10;
}

请问对象作为成员必须要new一个空间吗?为什么会出现这样的错误。
...全文
124 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
asdf84021919 2009-07-09
  • 打赏
  • 举报
回复
asdasdasdasd
361719298 2009-07-09
  • 打赏
  • 举报
回复
必须要new 一个空间的
只不过是 创建一个对象的位置 很灵活的
可以在需要时new
可以在构造函数中new
当然也可以 把引用作为方法的参数传递
361719298 2009-07-09
  • 打赏
  • 举报
回复
b1此时只是一个引用 存储在栈中
b1没有对象 是无法操作的
Edwin603 2009-07-09
  • 打赏
  • 举报
回复
b1在初始化时 没有被赋值 所以被默认初始化=null
ddyouyue 2009-07-09
  • 打赏
  • 举报
回复
b1对象为空...
b1=new B();
dw_2009 2009-07-09
  • 打赏
  • 举报
回复
要实现吧b1 必须要new一个方法出来…

62,616

社区成员

发帖
与我相关
我的任务
社区描述
Java 2 Standard Edition
社区管理员
  • Java SE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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