2015-10-14 17 views

回答

8

是的,有些情況下兩者之間的差異仍然相關。

  • 接口不能有字段(除了靜態字段)。
  • 接口不能有構造函數。
  • 接口不能有最終的方法。
  • 接口不能有非公共方法。

第一點是真正阻止您使用類似界面的界面。所有其他的都可以解決(儘管它可能很難看)。

3

您仍然無法擴展2個抽象類,但可以實現多個接口。

0

整理。關鍵的區別在於抽象類是類,因此具有可以封裝狀態並具有在該狀態下操作的具體方法的優點。接口不能有狀態,因此默認方法只能用其他接口方法進行操作。

0

我已經提出了immibis的答案。但我個人認爲,有幾件事讓我們決定使用哪一種,抽象類或接口。 抽象類具有一些接口沒有的特定功能。就像,接口不允許你在抽象類允許的地方描述它裏面的任何方法。此功能會產生差異。

,如果你想請去深入這個職位的詳細信息...

http://javacodingtutorial.blogspot.de/2013/10/interface-vs-abstract-class.html

+0

我想你已經錯過了問題的要點。使用新的默認方法,可以在接口中描述任何方法。 – bornfree

相關問題