2012-05-13 122 views
0

我有Activity類,ListActivity類,TabActivity類。我想用相同的功能擴展這些類。例如,將方法toDoSomething()添加到它們中的每一箇中。在Java中使用ulti繼承是不可能的。類層次解決方案

你能告訴我德興圖案或其他解決方案來解決這個問題,而不復制粘貼

謝謝!

+0

目前尚不清楚問題是什麼。 'ListActivity'和'TabActivity'派生自'Activity'嗎?如果是這樣,將通用功能放入基類中。 –

+1

您是否在談論Android標準活動課程?你爲什麼要爲每個人添加一個方法?不,Java中不允許多重繼承。不,「代碼重用」不是一個有效的動機。這就是實用程序類的用途。 –

+0

您將需要創建My * Activity類,使用該方法聲明'IDoSomethingable'並將'toDoSomething()'功能委託給其他類。 – user802421

回答

1

你可以少做複製粘貼,如果你有doSomething()方法(可能doSomething(Activity activity))定義的類DoSomethingHelper,然後從所有的活動中根據需要引用它。 我不知道有什麼更好的解決方案。