java編程思想-interface總結(jié)

這是我閱讀java編程思想選擇入手的第一個模塊,選擇interface模塊也是因為,不想從頭開始讀1000多頁的書,心理壓力太大。之前面試被問到的相關(guān)內(nèi)容,interface與abstract classs。
本章涉及內(nèi)容:

抽象類是介于interface與普通類之間

Abstract classes and methods

首先提到abstract class

  • 抽象類可以是他的派生類具有類似的方法
  • 抽象類不能創(chuàng)建具體實例
  • 抽象類的派生類沒有實現(xiàn)所有的抽象方法則也是抽象類,用關(guān)鍵字abstract 標識
  • 抽象類可以沒有抽象方法,意味著你不想生成這個類的實例
  • 其實一直不理解這一塊為啥一直提“The instrument class” 因為是挑著看的,我理解的意思是工具類,類似一些沒有狀態(tài)的類
  • 可以有利于重構(gòu)時候的方法提升

interface

interface是特殊的抽象類,更進一步的抽象

  • interface只提供了方法的聲明,沒有實現(xiàn)
  • interface可以實現(xiàn)變異版本的“多繼承”,可以創(chuàng)建一個類,向上轉(zhuǎn)型為多個基本類
  • interface 如果不添加pubilc關(guān)鍵字,只能在包內(nèi)訪問
  • interface 可以有字段。默認添加會添加static和final修飾
  • Creating a method that behaves differently depending on the argument object that you pass it is Strategy design pattern 策略設(shè)計模式:根據(jù)傳入?yún)?shù)對象創(chuàng)建一個行為不同的的方法
  • ***write code to take the interface thar you have and produce the interface that you need ***Adapter design pattern 適配器模式:編寫一個接口,獲取需要控制的生成接口實例

"Multiple inheritance" in java

  • “多繼承” 實現(xiàn)多個接口 與C++ 是不同的
  • 接口的繼承 繼承也可以多個接口,使用逗號隔開
  • 組合接口的命名沖突,繼承多個接口、方法名形同,重載如果僅僅返回值不同是不被允許的。盡量規(guī)避不同的接口方法名相同

Adaptiong to an interface

  • 適配一個接口 Strategy design patten

接口的字段

  • java5之前,接口用來實現(xiàn)枚舉常量的效果,建議接口中的字段使用大寫字母加下劃線組成
  • interface中字段默認static和final

接口的嵌套

  • 接口可以使用private 用于private inner class
  • private 的interface 只能在class內(nèi)部使用,切無法向上轉(zhuǎn)型
  • interface嵌套interface,但是嵌套的interface必須是pubilc

interface和工廠方法

  • "An interface is intended to be a gateway to multiple implementations ,and a typical way to produce objects that fit interface " Factory Method design pattern 工廠方法設(shè)計模式:
    如果一個接口有多個實現(xiàn),并且這個接口返回一個生產(chǎn)對象。

summary

  • 主要講述interface和abstract 的創(chuàng)建應該是有設(shè)計意圖的,在重構(gòu)的工作當中,使用interface和abstract是可以改變代碼的健壯性。
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容