Upv*_*ote 1 java android android-activity
我希望在各种活动中分享方法和属性.例如
public class BaseActivity extends Activity
Run Code Online (Sandbox Code Playgroud)
将是另一项活动的父母
public class MainActivity extends BaseActivity
Run Code Online (Sandbox Code Playgroud)
但如果孩子活动是例如ListActivity,这是不可能的,对吧?我也需要ListActivity的基类吗?这将是冗余代码.
我可以将ListActivity转换为Activity,但这需要更多的代码.
有什么建议?
你是对的.由于java不支持多重继承,因此一个类只能有一个基类.
但是您可以通过委派而不是继承来工作:将您的方法放入一个单独的类(不继承Activity)并在您的活动中使用它的实例.然后,您可以将冗余代码(创建和保存实例)减少到最少.
也可以看看:
http://sourcemaking.com/refactoring/replace-inheritance-with-delegation
| 归档时间: |
|
| 查看次数: |
552 次 |
| 最近记录: |