
橋接模式:將實現(xiàn)和抽象放在兩個不同的類層次中,使它們可以獨立改變馒稍。實現(xiàn)和抽象解耦皿哨,不再永久綁定。 缺點:增加了復雜度纽谒。 生成器模式:將一個復雜的創(chuàng)建過程封裝起來证膨,允許對象通過...
迭代器模式:提供一種方法順序訪問一個聚合對象中的元素央勒,而不暴露其內(nèi)部的結(jié)構(gòu)。 組合模式:允許將對象組成樹形結(jié)構(gòu)來表現(xiàn)“整體/部分”的層次結(jié)構(gòu)澳化。組合能讓客戶以一致的方法處理對象...
模板方法模式:在一個方法中定義一個算法的骨架订歪,而將一些具體步驟遲到到子類中。使得子類可以不改變算法結(jié)構(gòu)的情況下肆捕,重新定義算法中的某些步驟。
適配器模式:將一個類的接口轉(zhuǎn)換成客戶期望的另一個接口盖高;讓原本不兼容的類可以兼容 外觀模式:提供了一個統(tǒng)一的接口慎陵,用來訪問子系統(tǒng)的一群接口。外觀定義了一個高層接口喻奥,讓子系統(tǒng)更容...
命令模式:將請求封裝成對象席纽,讓你使用不同的請求、隊列撞蚕,或者日志請求來參數(shù)化其他對象润梯。命令模式也可支持撤消操作; 要點: 1甥厦、將發(fā)出請求的對象和執(zhí)行請求的對象解耦 2纺铭、解耦的兩...
在對象之間定義一對多的依賴舶赔,這樣一來,當一個對象狀態(tài)改變時谦秧,依賴它的對象都會收到通知竟纳,并自動更新撵溃。以松耦方式在一系列對象之間溝通狀態(tài)
狀態(tài)模式:允許對象在內(nèi)部狀態(tài)改變時改變它的行為,對象看起來好像修改了它的類桶略。允許對象隨著狀態(tài)改變而改變行為语淘。 策略模式:用行為或者算法來配置對象。
單例模式:確保一個類只有一個實例删性,并提供全局訪問點亏娜; 實現(xiàn)方式:私有構(gòu)造器、靜態(tài)方法蹬挺、靜態(tài)變量 風險點:多個類加載器维贺,單例模式失效產(chǎn)生多個實例 1、雙重加鎖 2巴帮、急切創(chuàng)建實例...
抽象工廠模式:提供一個接口溯泣,用于創(chuàng)建相關或依賴對象的家族,而不需要明確指定具體類榕茧; 工廠方法模式:定義了一個創(chuàng)建對象的接口垃沦,由子類要實例化的類是哪一個。工廠方法讓類把實例化推...
1用押、分類 創(chuàng)建型:Singleton,Builder,Prototype,Abstract Factory,Factory Method 行為型:Template Metho...
1肢簿、用靜態(tài)工廠方法代替構(gòu)造器 2、遇到多個構(gòu)造器參數(shù)時考慮用構(gòu)建器 3蜻拨、用私有構(gòu)造器或者枚舉類型強化Singleton屬性 4池充、通過私有強化不可實例化的能力 5、避免創(chuàng)建不必...
第11章:持有對象 直接總結(jié) 1缎讼、數(shù)組將數(shù)字與對象關聯(lián)起來 2收夸、Collection保存單一元素,Map保存相關聯(lián)的鍵值對血崭,自動調(diào)整尺寸 3卧惜、各種Queue以及棧的行為,由L...
第7章:復用類 組合:將對象引用置于新類中 繼承: 代理:將成員對象置于所要構(gòu)造的類中夹纫,在新類中暴露該成員對象的所有方法 第10章:內(nèi)部類 在一個方法里或者任意的作用域內(nèi)(類...
第1章:對象導論 沒啥說的 第2章:一切都是對象 存儲到什么地方: 1咽瓷、寄存器:處理器內(nèi)部,存儲最快 2舰讹、堆棧(棧):RAM隨機訪問存儲器忱详,壓棧、出棧跺涤,存放對象引用 3匈睁、堆:...
ClassLoaderFactory 內(nèi)部類Repository DIR:表示整個目錄下的資源监透,包括所有Class、Jar包及其他類型資源航唆; GLOB:所有Jar資源胀蛮; JA...
1、啟動類加載器:Bootstrap ClassLoader :加載對象是java核心庫糯钙,把一些核心的類加載進jvm中粪狼,使用原生C/C++實現(xiàn),所有類的加載器的父加載器任岸。無法...