创建抽象活动类

时间:2011-04-25 02:59:29

标签: java android class android-activity abstract

我正在为我的应用程序创建抽象活动类,我将为每个活动重用它。

  1. 超级课程: android.app.Activity

  2. 我的抽象类扩展了android.app.Activity myActivity

  3. 我的应用程序中的示例活动扩展了myActivity

  4. 我将有10-20个exampleActivity

    如何编写抽象类(#2)以强制我的示例类覆盖android.app.Activity中的方法,如onCreate()onStart()

    这在Java中是否可行?

3 个答案:

答案 0 :(得分:3)

不是。

然而你可以创建抽象函数myOnCreate和myOnStart,并在onCreate和onStart的抽象类实现中调用它们。

你可能也想让onCreate / onStart最终,虽然很难看出强迫myOnCreate而不是onCreate有什么好处。

答案 1 :(得分:3)

这是可能的,

public abstract class MyActivity extends android.app.Activity
{

    public abstract void onCreat(...);
    public abstract void onStart(...);
}

public class OtherActivity extends MyActivity
{
    public void onCreate(...)
    {
        //write your code
    }

    public void onStart(...)
    {
      //write your code
    }
}

答案 2 :(得分:0)

NOP。如果您需要强制其他人在其实现中覆盖它,那么使用onCreate和onStart方法创建接口会更优雅。

并通过构造函数或setter将接口实例传递给抽象活动类。