gpt4 book ai didi

java - 为什么程序员要加载一个类两次?

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

在类 Myclass 中,类 Help 作为对象加载,但随后在 Help 类本身中再次加载。 Help 类不是加载了两次吗?这样做的原因是什么?

例如:

public class Myclass {
int i;
Object help;

public Myclass() {
help = new Help(); /// help class loaded
}

private Object doSomething(int h) {
Help.getHelp(h);
}
}

帮助类:

public class Help(){
Object returnhelp;
int h;

public Help() {
int h=3;
}

public Help getHelp(int y) {
return new Help(y); ///// Help class loaded again ????
}

private add(int y) {
h=+y;
return h;
}
}

最佳答案

首先,您混淆了类加载和类实例化。

  • 类加载是指 Java 虚拟机将类代码加载到内存中。
  • 类实例化是指创建该类的实例(对象)。

此外,您的代码无法编译,因为为了做到这一点

Help.getHelp(h)

getHelp(int) 必须是静态的:

public static Help getHelp(int y)

在这种情况下,您不会实例化两次。使用静态方法实例化给定类的对象是一个常见的过程,它被称为 factory .

关于java - 为什么程序员要加载一个类两次?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13359245/

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