目錄
6大原則 分類
**模式
jdk中的設計模式
單一職責:乙個類只需要做好一件事,複雜事通過多個類的合作完成開閉原則:對擴充套件開放,對修改關閉
黎克特制替換原則:父物件能做的事,子物件也能做
依賴倒置:上層模組不應該依賴下層模組,應該都依賴於抽象(解耦,兩邊約定好介面,各幹各的),抽象更穩定
介面隔離(分解胖介面):客戶不應用依賴它不需要的介面,多個專一介面優於乙個複雜介面
迪公尺特原則(最少知道原則):,物件應該對其他物件的了解越少越好,解耦物件,封裝隱藏實現細節
生成器builder:分步驟建立複雜物件
原型:將clone委派給被轉殖物件自身
單例結構型模式:組裝類和物件成更大的結構,同時保持結構的靈活、高效
外觀:為框架、複雜類、程式庫提供乙個簡單的功能介面
享元:將物件的不可修改的內部變數提取出來,共享使用,節約記憶體
**:訪問控制、日誌**等,客戶端只與**互動,服務物件全權交給**負責
介面卡:不同介面間物件的合作,介面卡實現乙個介面,組合另乙個,內部進行轉換
行為型模式:物件間的溝通、職責委派
目的:控制和管理對**物件的訪問、擴充套件功能靜態**:
動態**:
通過 proxy.newproxyinstance (classloader loader,class<?> inte***ces,invocationhandler h) 方法建立**物件;
在呼叫**物件方法時就自動走重寫的invoke方法,裡面的method函式就是呼叫的方法
限制:只能**實現了介面的類
cglib (code generation library)動態**
通過 enhancer 類的 create()建立**類
限制:不能**宣告為 final 型別的類和方法
裝飾器和**模式的區別(表達意義)
學習自:
head first 設計模式
HTTP 校招知識點總結
http協議概述http報文格式請求方法與響應碼瀏覽器搜尋到頁面顯示的過程,http與tcpsession與cookieshttp1.0,1.1,2.0restful 程式設計風格https http是指超文字傳輸協議,顧名思義就是通過網路在主機之間傳遞超文字的一種協議,廣泛用於bs 瀏覽器和web...
設計模式知識點總結
什麼是設計模式?答 christopher alexander說過 每乙個模式描述了乙個在我們周圍不斷重 生的問題,以及該問題解決方案的核心。這樣,你就能一次又一次地使用該方案而不必做重複勞動。簡單來講,設計模式就是經驗的總結。設計模式的分類 23種 答 建立型模式 5種 單例模式 抽象工廠模式 工...
MySQL事務實現 校招知識點總結
本章內容 事務特性 redo log如何實現永續性 undo log如何實現原子性 鎖 mvcc 實現隔離性 事務特性 redo log如何實現永續性 實現 innodb通過force log at commit機制實現永續性 效能影響 redo log包括兩部分 記憶體中的重做日誌緩衝區 磁碟中的...