gpt4 book ai didi

java - 创建一个全局对象或多个局部对象

转载 作者:行者123 更新时间:2023-12-01 10:26:10 29 4
gpt4 key购买 nike

如果我有一个 OnlineDataRetrieval 类,我需要在 Activity 中不时使用它,那么为该类打开一个全局对象并在整个 Activity 的生命周期中重用该对象是否明智,或者我应该创建一个本地对象每次我需要使用该类时都对象吗?

所以基本上我想知道从性能角度来看以下哪个选项更可取?

选项 1

public class Activity extends Activity {
OnlineDataRetrieval onlineDataRetrieval;
protected void onCreate(Bundle savedInstanceState){
onlineDataRetrieval = new OnlineDataRetrieval(this);
}
public void methodA(){
onlineDataRetrieval.callSomeMethod();
}
public void methodB(){
onlineDataRetrieval.callSomeMethod();
}
public void methodC(){
onlineDataRetrieval.callOtherMethod();
}
}

选项 2

public class Activity extends Activity {
protected void onCreate(Bundle savedInstanceState){

}
public void methodA(){
OnlineDataRetrieval onlineDataRetrieval = new OnlineDataRetrieval(this);
onlineDataRetrieval.callSomeMethod();
}
public void methodB(){
OnlineDataRetrieval onlineDataRetrieval = new OnlineDataRetrieval(this);
onlineDataRetrieval.callSomeMethod();
}
public void methodC(){
OnlineDataRetrieval onlineDataRetrieval = new OnlineDataRetrieval(this);
onlineDataRetrieval.callOtherMethod();
}
}

最佳答案

Java 是面向对象的。每次初始化类的新实例时,您都在创建一个新对象。如果您不需要创建新实例,那么从类中调用方法的选项是可以接受的。

这就像创建一个对象一次并从中调用一个方法三次与创建三次不同的对象并从三个不同的对象中调用相同的方法一样简单。

就性能而言,我会选择选项 1。

关于java - 创建一个全局对象或多个局部对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35352355/

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