gpt4 book ai didi

java - 对象和类关系的含义

转载 作者:行者123 更新时间:2023-11-29 21:56:03 25 4
gpt4 key购买 nike

A.java:

public class A {
public static StartActivity startActivity;
}

B.java:

public class StartActivity extends Activity  
public void onCreate(Bundle savedInstanceState) {
A.activity = this;
}
}

从上面2个java文件中,请问a.activity = this;是什么意思?这是否意味着创建一个新的 Activity 实例?

最佳答案

Do that mean create a new instance of activity?

没有。 activity 是一个字段,而不是一个类,你不能创建一个变量的“实例”,只是类的。所有这些代码所做的就是将一个已经存在的对象(当前 b 对象)分配给 a 的静态字段、 Activity ,仅此而已。

编辑
更正,我想 Activity 也是一个类,因为你有一个类型和一个同名的变量, Activity ?您的命名是非标准的,这极大地混淆了问题和您的问题。我建议你改变你的问题并使命名标准和不混淆。包括类、接口(interface)和枚举在内的所有类型都应以大写字母开头,所有变量都应以小写字母开头。

编辑2
好的,在查看您编辑的问题中的最新代码后,我们看到 A 有一个静态 StartActivity 字段,也称为静态变量,称为 Activity。在类 B 的 onCreate(...) 方法内部,它将 this(对当前 B 对象本身的引用)分配给 A 的 Activity 字段。因此,如果将 Activity 分配给先前的 StartActivity 对象,则如果调用其 onCreate(...) 方法,则该分配现在已更改为当前 B 对象。

关于java - 对象和类关系的含义,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13243483/

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