阅读本文约“1.8分钟”


实例变量永远都会有默认值,如果你没有明确的赋值给实例变量,或者没有调用setter,实例变量还是会有值!

integers  0

floating points  0.0

booleans   false

reference   null

因此,你无需初始实例变量,因为他们会有默认值。数字的primitive(包括char)的预设为0,boolean的预设为false,而对象引用则为null。

要记得null代表没有操作对象的远程控制,它是个引用而不是对象。

我们来看看实例变量与局部变量之间的差别:

1、实例变量是声明在类内而不是方法中。

2、局部变量是声明在方法中的。

3、局部变量在使用前必须初始化。

局部变量没有默认值,如果在变量被初始化前就要使用的话,编译器会显示错误。

那么方法的参与与局部变量也是一样的吗?

方法的参数基本上与局部变量是相同的,但是方法不用担心其未声明的问题,因为在调用的时候,编译器就会检查你是否合法的传参与调用这个方法了。

对于变量的比较(primitive主数据类型或引用)

使用==来比较两个primitive主数据类型,或者判断两个引用是否引用同一个对象。

使用equals来判断两个对象是否在意义上相等。


本文已转载个人技术公众号:UncleCatMySelf
欢迎留言讨论与点赞
上一篇推荐:【Java猫说】项目架构的演进史(大型电商系列)
下一篇推荐:【Java猫说】构建战舰类控制台游戏


Java猫说
1.3k 声望930 粉丝

现架构设计(码农)兼创业技术顾问,不羁平庸,热爱开源,杂谈程序人生与不定期干货。