首页 > 解决方案 > android studio中Java类的生命周期

问题描述

就像android studio中UI控制器的生命周期一样,我想知道android studio中java类是否有类似生命周期的概念?

以以下活动的方法为例onCreate:-

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    // The activity is being created.
}

那么问题来了,Java 类是否也有这样的状态呢?

标签: javaandroidandroid-lifecycle

解决方案


Java 类并没有真正的生命周期。它们是在您调用构造函数时构建的,它们会持续到垃圾收集器说可以删除它们,然后释放内存。在此之前有一个终结器被调用,但在没有真正需要的情况下不鼓励使用它——它会显着减慢垃圾收集器的速度。

Activity 的 onCreate 就像普通函数一样工作。它由创建 Activity 实例的类调用。这个类是 Android 框架的一部分,但只是另一个普通的 Java 类。它基本上是:

MyActivity activity = new MyActivity();
activity.onCreate(bundle);
//Does some other stuff
oldActivity.onPause()
activity.onStart()
activity.onResume()
oldActivity.onStop()

如果您有需要,您可以将相同的规则应用于对象,但它不是内置的。甚至没有 Activity——它只是启动处理这种行为的活动的框架类。


推荐阅读