gpt4 book ai didi

java - java中静态字段和方法如何占用内存?

转载 作者:行者123 更新时间:2023-12-01 07:06:24 25 4
gpt4 key购买 nike

我在谷歌上搜索过。它说静态字段和方法是在编译时加载的。在我看来,编译是用来创建类文件,然后在执行时,创建线程,程序会占用内存。 “在编译时”是什么意思?是指创建类文件时? http://javarevisited.blogspot.com.au/2012/03/what-is-static-and-dynamic-binding-in.html这是网址。

最佳答案

It says the static field and method are loaded in compile time. In my mind, compiling is used to create the class file [...]

你是对的 - 这是一个错误的陈述:静态方法和字段在编译时解析;它们不可能在编译时加载,因为您的程序尚未运行。

它们的意思是,编译器决定在内存中引用静态项的位置,因此当加载程序时,无需额外计算即可完成对静态成员的访问。这称为静态绑定(bind)。

相反,对实例成员和实例方法的访问是在运行时决定的:实例字段在内存中的位置取决于实例的位置,而实例方法的位置取决于实例的类型。

关于java - java中静态字段和方法如何占用内存?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23043743/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com