提问人:Ab12 提问时间:11/10/2023 最后编辑:Mark RotteveelAb12 更新时间:11/10/2023 访问量:62
为什么构造函数位于堆栈而不是堆内存(Java)上,它们不是在创建对象时调用的吗?
Why do constructors live on stack instead of heap memory (Java), aren't they invoked on creation of an object?
问:
我正在深入研究 Java 编程。当我读一本书时,我意识到与方法和关联的局部变量(堆栈变量)类似,构造函数也可以以与方法相同的方式堆栈序列(在每次调用时,机架位于调用堆栈的顶部,然后在完成时“弹出”(代码块“}”的结尾)。重复该过程,直到堆栈底部的机架完成执行所有语句。
所以,我想了解的是,为什么构造函数也会进入堆栈而不是堆内存(gc 堆),它们不应该是被实例化的对象的成员(也存在于堆上)?
我试着理解,但不能。
答: 暂无答案
上一个:C++:多态对象的连续存储器
下一个:使用分段和分页组合的系统 问题
评论