gpt4 book ai didi

java - 跨多个不同子类的静态变量 - 更正

转载 作者:搜寻专家 更新时间:2023-10-30 19:54:15 25 4
gpt4 key购买 nike

我想知道如果我定义一个基本 Activity 对象并将我的所有 Activity 作为其子类会发生什么。然后我在基类中声明一个静态变量,所有的子类都使用相同的静态变量还是每个子类都有一个。

例如。我的基类:

public class MyBaseActivity extends Activity{

static int myStatic;

...
....

}

然后:

public class MyActivity1 extends MyBaseActivity {


private void someMethod1(){
myStatic = 1;
}

...
....

}

public class MyActivity1 extends MyBaseActivity {

private void someMethod2(){
if (myStatic == 1)
doSomething();
}

...
....

}

如果我现在启动 MyActivity1 并在“myStatic”中设置一个值。然后它退出,然后我启动 MyActivity2 - 我应该仍然拥有第一个 Activity 设置的值吗?在上面的示例中,“if”语句是真还是假?

我知道,如果我多次实例化 Activity1,那么显然我会得到相同的静态变量。但是,这里我每次都实例化一个不同的子类。

我的印象是这就是发生在我身上的事情,但我想确定一下。

最佳答案

静态就是静态。它们将引用相同的对象。

关于java - 跨多个不同子类的静态变量 - 更正,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6215680/

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