JAVA 对象初始值问题

经常看到别人代码里在声明对象时都跟上=null。虽然他们以后还会new这个对象,但是总是先=null。我的问题是,有必要一定要声明时立刻=null吗?不是一会儿就new它... 经常看到别人代码里在声明对象时都跟上=null。
虽然他们以后还会new这个对象,但是总是先=null。
我的问题是,有必要一定要声明时立刻=null吗?不是一会儿就new它了吗?
还有,假如我不=null,他们会自动被初始化null吗?java好像一些变量会被自动初始化,那么对象是否也会被初始化为null呢?
展开
 我来答
叶小怜
2010-09-12 · TA获得超过408个赞
知道小有建树答主
回答量:379
采纳率:0%
帮助的人:262万
展开全部
如果你不在声明时=null,你后面有可能就忘记了初始化,而直接使用了,这样的后果有可能没有报错误,但是执行的结果运行了一段时间才发现错了。这样的错误很难找。
如果你一开始声明时就=null,后面如果忘记初始化而使用这个对象时,就会抛空指针异常,这时你立刻就知道是什么问题。
所以这不仅仅是个好习惯,而且会给你带来很多好处,其中之一就是不用为了查找一个这样的隐蔽错误而加班了。
xinghunshang
2010-09-12 · 超过11用户采纳过TA的回答
知道答主
回答量:46
采纳率:0%
帮助的人:20.2万
展开全部
在初始化变量时,如果对象是成员变量且没有赋初值,java会自动帮你初始化为null的,如果不是成员变量,声明时就必须赋初值。对象=null的意思是,在内存的堆栈里给你分配了一小块这个对象名的空间,里面什么都没存,实际上应该是你实例化的类在堆内存中的地址。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
Jseven_jy
2010-09-12 · TA获得超过8122个赞
知道大有可为答主
回答量:2499
采纳率:100%
帮助的人:1137万
展开全部
还有,假如我不=null,他们会自动被初始化null吗?

类中的属性会..方法中的临时变量不会..

比如class A {
String a;
void method() {
String b;
}
}
其中a会默认初始化为null..也就是说你用他之前可以不用初始化..b就不会了..在那个方法里面你用他之前必须初始化..

java好像一些变量会被自动初始化,那么对象是否也会被初始化为null呢?
这个同上了..

有必要一定要声明时立刻=null吗?不是一会儿就new它了吗?
这个是编程习惯..良好的编程习惯才不会犯错误..让你有一个根深蒂固的印象..那就是变量用之前必须先初始化..
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
大衍之49
2010-09-12 · TA获得超过1049个赞
知道小有建树答主
回答量:1159
采纳率:0%
帮助的人:1073万
展开全部
类的对象自动初始化为null 要看类的构造函数中是否提供了默认的初始化构造函数,

所以在不知道类的前提下,将对象显示初始化为null是保险的做法,
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
biubiubiu0xd
2020-11-19
知道答主
回答量:1
采纳率:0%
帮助的人:554
展开全部
可写可不写,如果加上null反而idea提示你初始化变量多余,就不写。写上也没毛病,习惯问题。
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 3条折叠回答
收起 更多回答(5)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式