我对 Java 变量和类对象的生命周期的了解有限,因此我提出了这个问题。我知道我们不能在 java 中创建静态类。引用SO上的问题,我知道Java中只有嵌套类可以是静态的。
我的要求:我有一个具有不同 Activity 的 android 应用程序。在一项 Activity 中,我要求提供用户详细信息,如用户名和其他偏好,我希望这些也可以从其他 Activity 中访问。我有一个具有不同类成员的类来存储/检索这些值(使用 setter/getter)。
public class ClassTest {
public int x;
String a;
/**
* @return the a
*/
public String getA() {
return a;
}
/**
* @param a the a to set
*/
public void setA(String a) {
this.a = a;
}
/**
* @return the x
*/
public int getX() {
return x;
}
/**
* @param x the x to set
*/
public void setX(int x) {
this.x = x;
}
}
但是,当我想从另一个 Activity 访问这些变量的值时,我创建了一个此类的对象,这就是我的问题 - 所有类成员现在都再次初始化,存储的值消失了!
ClassTest object=new ClassTest();
object.setA("foo bar");
在另一个 Activity 中使用该对象,我创建了该类的一个新对象:
ClassTest object=new ClassTest();
还有!值(value)观消失了!
我能做的一件事是将它们保存在属性文件中并在需要时读取它们,但我希望有一种方法可以使用类对象来完成此操作。
欢迎提出任何关于如何实现这一目标的想法!
提前致谢:)
最佳答案
这就是为什么我们有
intent.putExtra("classTestObject", object);
您不必在每个 Activity 中再次创建对象实例。只需传递引用即可。
关于java - 类对象的生命周期 : Java,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24470714/