Android中的活动之间的继承

And*_*ine 10 inheritance android android-activity

我无法将继承概念应用于Android活动 - 例如. ActivityA extends Activity然后 ActivityB extends ActivityA,如果我使用ActivityB启动,则调用两个活动(A然后是B)的onCreate()方法.

我的问题是,在典型的Java中,来自ActvityA的onCreate应该被覆盖 - 但onCreate相当表现为构造函数,即使它是一个函数.继承如何在Android中工作,尤其是 wrt其他函数如onPause(),onResume等?

编辑:我还注意到ActivityA可能有许多在其onCreate()中调用的抽象方法,其定义在ActivityB中提供.这是如何运作的 ?

Stu*_*ing 7

如果你有你的基地的活动,然后扩展它像这样Activity- > Activity A这意味着你的onCreate的时候Activity A被调用,你叫super.onCreate();那么onCreate()原来的方法Activity也被称为.

如果你然后延伸Activity A到这样Activity B的调用工作......

Activity B.onCreate()- super.onCreate();- > Activity A.onCreate()- super.onCreate()- > Activity.onCreate().

它不是一个构造函数,它是一个被称为创建的方法Activities.如果你然后从其他Activities超类扩展它们将通过它的super方法调用它.这并不意味着Activities你继承的也将被创造出来.Activity B将是你的创造Activity.

编辑: Android Developer网站上的这个页面非常有用,因为它直观地解释了Android Activity的生命周期.