可能重複:
Abstract class and Interface class?當我需要在Java中使用抽象類和接口?
當我需要使用abstract class和interface在Java中?
我的疑問是
- 我需要哪些情況下使用抽象類,哪種情況下,我需要使用的界面。
- 接口滿足抽象類的屬性。那麼爲什麼我們需要特別抽象的類?我知道,抽象類包含抽象方法和非抽象方法,但是我們可以使用抽象類作爲普通類,那麼結果在兩個類中都是相同的。普通類也繼承了與抽象類相同的類。所以我們爲什麼需要抽象類。
如果有人知道這個好例子,請回復我。
謝謝。
還強烈建議,在回答這個問題:http://stackoverflow.com/questions/56867/interface-vs-base-class – 2010-10-05 17:47:55
考慮使用抽象類,如果這些聲明,適用於您的情況: - 你想要在幾個密切相關的類中共享代碼。 - 您期望擴展抽象類的類具有許多常用的方法或字段,或者需要公共訪問修飾符(例如protected和private)。 - 您想要聲明非靜態或非最終字段。這使您可以定義可訪問和修改其所屬對象狀態的方法。 – sarath 2014-02-11 17:00:17