2012-09-05 101 views
0

可能重複:
Interface vs Abstract Class (general OO)何時使用抽象類和接口

請給我解釋一下,用一個例子,在什麼情況下使用抽象類和接口。在大多數情況下,人們總是傾向於使用接口而不是抽象類,爲什麼? 解釋它們的用途。在此先感謝

+3

http://stackoverflow.com/questions/761194/interface-vs-abstract-class-general-oo –

+0

多繼承是非法的,接口在本質上更簡單。 – JMelnik

+2

必須是Java中最常見的問題,也是最常被回答的問題,谷歌上的2870000個結果。 –

回答

1

抽象類是一種特殊的類,不能實例化。那麼,爲什麼我們需要一個無法實例化的類?抽象類只能被繼承。換句話說,它只允許其他類從它繼承,但不能被實例化。其優點是它可以在繼承抽象類的多個類中執行某些常見行爲或屬性。

接口是由接口這個詞定義的實體。接口只包含其實現將由實現該接口的類提供的方法的簽名。