java如果自己写了一个构造方法,类成员变量还会被自动初始化吗

ruo_qi 2017-09-04 08:29:15
在我的印象里是不会的,但是think in java 却是这样描述的,求解
...全文
669 9 打赏 收藏 转发到动态 举报
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Fatal Error 2017-09-12
  • 打赏
  • 举报
回复
你定义了 int i;就是已经默认初始化了。
lanlandemaomi 2017-09-12
  • 打赏
  • 举报
回复
int i 在默认不赋值的情况下就是 0,走了构造后被赋值为 7
Timor_D 2017-09-11
  • 打赏
  • 举报
回复
先初始化 值为零或者 null 然后赋值 这是2个步骤
湖东路59号 2017-09-08
  • 打赏
  • 举报
回复
必须初始化默认值,不然怎么用呢
hm10300 2017-09-08
  • 打赏
  • 举报
回复
类加载 分为 加载 验证 准备 解析 初始化 在准备这个阶段 是给类变量默认赋值 例如: int a=0; boolean b=false; (当然如果在编译的时候已经存在ConstantValue也会初始化值了 int a=123;)在初始化阶段才会初始化类中的值 int a=123; 而构造方法是在对象实例化的时候才会用到 在类加载完成之后 才会使用到构造方法初始化非静态成员变量 有先后顺序的 所以类成员变量还是会初始化的
李德胜1995 2017-09-08
  • 打赏
  • 举报
回复
在代码还没有执行前,前面有个阶段叫准备,这个阶段JVM 会为类的成员变量分配内存空间并且赋予默认初始值,需要注意的是这个阶段不会执行任何代码,而只是根据变量类型决定初始值。。。
kobe8free 2017-09-07
  • 打赏
  • 举报
回复
自己写个java类,一目了然。 初始化后 基本类型才有了值。
逗比123号 2017-09-04
  • 打赏
  • 举报
回复
类加载就是要初始化
X元素 2017-09-04
  • 打赏
  • 举报
回复
初始化是jvm加载过程中必须要经历的。

62,621

社区成员

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

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