【发布时间】:2012-02-23 12:06:51
【问题描述】:
我正在编写一个应用程序,其中我有一组代码,我希望在我的所有活动和活动组中都可以使用这些代码。然而,为了实现这一目标,我将我的活动扩展为:
//custom Activity
public abstract class BaseActivity extends Activity
//custom ActivityGroup
public abstract class BaseActivityGroup extends ActivityGroup
//implemented activities in my app
public class PickUser extends BaseActivity
//and
public class Home extends BaseActivityGroup
现在的问题是,无论我在 BaseActivity 中编写什么自定义代码,我都必须在 BaseActivityGroup 中编写相同的代码(就像在当前实现中一样)。这很容易出现代码同步问题,我认为这不是一个好的技术。
那么,我怎样才能使我的扩展只在BaseActivity 中编写自定义代码,而我的BaseActivityGroup 扩展ActivityGroup - 这是从BaseActivity 类构思出来的?
如果我观察 android 是如何做到这一点的,那么 android 中的 ActivityGroup 扩展了 Activity 类。而且我还想编写我的自定义 ActivityGroup 类(称为 BaseActivityGroup),它实际上扩展了 BaseActivity(这是一个扩展的 Activity)。
有什么想法/建议吗?
【问题讨论】:
标签: android inheritance android-activity extends activitygroup