javainterface
① java定義介面時需要使用的關鍵字是
interface
java定義介面時需要使用的關鍵字是interface。Java 介面的定義方式與類基本相同,不過介面定義使用的關鍵字是 interface,介面的主要用途就是被實現類實現,一個類可以實現一個或多個介面,繼承使用 extends 關鍵字,實現則使用 implements 關鍵字。因為一個類可以實現多個介面,這也是 Java 為單繼承靈活性不足所作的補充。java定義介面時需要使用的關鍵字是interface。
(1)javainterface擴展閱讀:
Java介面和Java抽象類最大的一個區別,就在於Java抽象類可以提供某些方法的部分實現,而Java介面不可以,這大概就是Java抽象類唯一的優點吧,但這個優點非常有用。
如果向一個抽象類里加入一個新的具體方法時,那麼它所有的子類都一下子都得到了這個新方法,而Java介面做不到這一點,如果向一個Java介面里加入一個新方法,所有實現這個介面的類就無法成功通過編譯了,因為你必須讓每一個類都再實現這個方法才行,這顯然是Java介面的缺點。
② Java中abstract和interface的區別
1.abstract class 在 Java 語言中表示的是一種繼承關系,一個類只能使用一次繼承關系。但是,一個類卻可以實現多個interface。
2.在abstract class 中可以有自己的數據成員,也可以有非abstarct的成員方法,而在interface中,只能夠有靜態的不能被修改的數據成員(也就是必須是static final的,不過在 interface中一般不定義數據成員),所有的成員方法都是abstract的。
3.abstract class和interface所反映出的設計理念不同。其實abstract class表示的是"is-a"關系,interface表示的是"like-a"關系。
4.實現抽象類和介面的類必須實現其中的所有方法。抽象類中可以有非抽象方法。介面中則不能有實現方法。
5.介面中定義的變數默認是public static final 型,且必須給其初值,所以實現類中不能重新定義,也不能改變其值。
6.抽象類中的變數默認是 friendly 型,其值可以在子類中重新定義,也可以重新賦值。
7.介面中的方法默認都是 public,abstract 類型的。