滑稽阿狸 2016-03-02 16:05 采纳率: 100%
浏览 4208
已采纳

java中创建对象的步骤是怎么样的?

老师说,先new了一个对象,在堆内存中开辟空间
然后就是赋默认值(没有静态代码块)
接着就是调用对应的构造函数进栈。
执行隐藏的步骤。
1:super()
2:对非静态变量进行赋显示值
3:执行构造代码块
最后执行构造函数代码块。
然后构造函数出栈。把地址传递给接受的变量。

  • 写回答

12条回答

  • 丑旦 2016-03-03 03:30
    关注

    大家已经说的够多了,估计也听得差不多了。这种问题也只会在面试或者考试出现,实际编程中写成这样,早被打死了。老师说的概念太拗口,这样说你可能会好理解一点,普通的初始化代码其实是一个假象,命令行下用javac编译之后,会发现所有的初始化块都没了,其实它被还原到每个构造器中,并且位于构造器所有代码的前面,这样再看你的程序是不是就很清楚了?嘿嘿。

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(11条)

报告相同问题?

悬赏问题

  • ¥15 关于#python#的问题:求帮写python代码
  • ¥20 MATLAB画图图形出现上下震荡的线条
  • ¥15 LiBeAs的带隙等于0.997eV,计算阴离子的N和P
  • ¥15 关于#windows#的问题:怎么用WIN 11系统的电脑 克隆WIN NT3.51-4.0系统的硬盘
  • ¥15 来真人,不要ai!matlab有关常微分方程的问题求解决,
  • ¥15 perl MISA分析p3_in脚本出错
  • ¥15 k8s部署jupyterlab,jupyterlab保存不了文件
  • ¥15 ubuntu虚拟机打包apk错误
  • ¥199 rust编程架构设计的方案 有偿
  • ¥15 回答4f系统的像差计算