我想提供不同的活动类型,如开启和关闭数据库连接之间的共同功能之间共同的功能。考虑下面的类:共享不同的活动类型
public class DataActivity extends Activity {
private DbAdapter mDbAdapter;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//open database
mDbAdapter = new DbAdapter(this);
mDbAdapter.open();
}
@Override
protected void onDestroy() {
super.onDestroy();
//close database
mDbAdapter.close();
}
public DbAdapter getDbAdapter() {
return mDbAdapter;
}
}
然后我可以简单地扩展DataActivity
并在整个类访问我的数据。但是,如果我想要这样做ListActivity
或ExpandableListActivity
呢?我需要制作一份DataActivity
的副本,并让它扩展所需的类别。
这似乎真的很乱具有每个活动类型,我想它添加到多个类别重复的实现代码。
编辑 它看起来像我想要做的上面是不是真的可能因为Java的设计方式(没有多重继承)。有几种方法可以最大限度地减少代码重复,但在这种情况下继承不起作用。