java中接口和抽象類

包含抽象方法的類叫做抽象類。如果一個類包含一個或多個抽象方法,該類必須被限定爲抽象的。

如果從一個抽象類繼承,並想創建改新類的對象,那麼就必須爲基類中的所有抽象方法提供方法定義。

如果不這樣做(可以選擇不做),那麼導出類便也是抽象類,並且編譯器會強制我們使用abstract關鍵字來限定這個類。

創建抽象類和抽象方法非常有用,因爲它們可以使類的抽象性明確起來,並告訴用戶和編譯器打算怎樣來使用它們。

抽象類還是很有用的重構工具,因爲它們使得我們可以很容易得將公共方法沿着繼承層次結構向上移動。


接口被用來建立類與類之間的協議。

創建接口用關鍵字interface,可以在interface關鍵字前面添加public關鍵字(但僅限於該接口在於其同名的文件中被定義)。如果不添加public關鍵字,則它只具有寶訪問權限,這樣它就只能在同一個包內可用。

接口也可以包含域,但是這些域隱式地是static和final的。

使用接口的核心原因:爲了能夠向上轉型爲多個基類型(以及由此而帶來的靈活性)。

第二個原因是與使用抽象基類相同:防止客戶端程序員創建該類的對象,並確保這僅僅是創建一個接口。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章