原创 設計模式篇章四——裝飾模式

前言:初學設計模式如果有錯誤請多多指教(Thanks >-<) 裝飾模式的介紹 裝飾模式又稱爲裝飾者模式,是結構型模式中的一種,指的允許向一個現有的類添加新的功能,而又不改變其結構。(就好比對一個對象進行裝飾添加一些東西但又不改

原创 設計模式十——建造者模式

建造者模式的介紹 將一個複雜對象的構建與它的表示分離,使得同樣的過程可以建造不同的表示。該模式屬於創建型模式。本質上該模式就是一個對象的創建不是該類自己進行創建而是通過其他類進行創建。 建造者模式參與角色 參與角色 功能

原创 小知識——關於char類型的輸出(java)

問題拋出 給你們一個問題:System.out.println('a'+'b');結果是多少? 如果你的答案是:ab,恭喜你回答錯誤,正確的答案是195。 問題出現原因 首先我們需要知道一個char佔兩個字節,其最小值爲0,最大值

原创 設計模式篇章五——代理模式

注:初學設計模式,如果有錯誤希望能多多指教(Thanks >-<) 代理模式的介紹(該篇主要講解靜態代理模式) 代理模式定義爲:爲其他對象提供一種代理以控制對這個對象的訪問(相當於與中間人)。是結構設計型模式中的一種。 代理模式的

原创 設計模式十五——備忘錄模式

備忘錄模式定義 定義:在不破壞封閉的前提下,獲取一個對象的內部狀態,並在該對象之外保存這個狀態,這樣以後就可以將該對象恢復到原先保存的狀態。 (該模式是一個行爲模式) 關鍵點:不破壞封閉、將狀態保存在對象之外 解析:該模式將對象的

原创 設計模式篇章七——原型模式

原型模式的介紹 一種創建型的設計模式,通過一個對象的實例來創建一個與該對象相同的實例對象,本質上就是通過對象來創建一個對象(被創建的對象是原對象的拷貝)。 原型模式參與的角色 角色 功能 抽象的原型類 是所有具體原型

原创 設計模式篇章二——簡單工廠模式

前言:這是我初學設計模式過程中所寫的,若有錯誤希望能夠指出(Thank >-<) 簡單工廠的介紹 簡單工廠模式屬於創建模式的一種(設計模式分爲幾大類創建模式是其中的一種),又稱靜態工廠方法模式(在設計模式中有簡單工廠模式、工廠方法

原创 設計模式十一——觀察者模式

觀察者模式介紹 該模式設計了一個一對多的依賴關係,使得一個對象某個狀態的更改會影響到所有依賴於該對象的其他對象。該模式的目的是使得一種對象的改變能夠影響到其他相應對象,使得它們也會做出對應的更改。 一個關於觀察者模式的例子:比如說

原创 設計模式篇章一——七大原則

初學設計模式,如有錯誤之處希望能夠指出 前言:這是我初學設計模式過程中所寫的,若有錯誤希望能夠指出(Thank >-<) 引入 首先設計模式出現的目的就是使得程序更加靈活、易於修改、擁有高複用性和便於拓展。在軟件的製作過程中我們會

原创 設計模式篇章三——策略模式

策略模式簡介 策略模式是行爲模式中的一種,指對象的某個行爲或動作在不同的環境下,有着不同的表現。 策略模式的三個組成角色 角色 作用 抽象策略角色 是所有具體策略角色的一個共同接口 具體策略角色 每個具體策略的實

原创 設計模式篇章六——工廠方法模式

工廠方法模式的介紹 定義:創建一個用於產生產品類的工廠接口,但在工廠接口子類中去真正的實現創建對應的產品對象。相比於簡單工廠模式,工廠方法模式將對象的創建放在實現了工廠接口的子類中,而工廠接口本身只是一個接口。 工廠方法模式中的角

原创 力扣篇章——隊列和棧

前往力扣 說在前面——雖然有了數組但是當我們想要限制數據處理的順序時,我們就可以使用隊列和棧。(其實隊列和棧就是鏈表和數組的使用) 隊列(FIFO) 隊列就是一個先進先出的序列,即first input first out

原创 設計模式十二——抽象工廠模式

抽象工廠模式介紹 定義:提供一個創建一系列相關或互相依賴對象的接口,而無需指定他們具體的類。 暫且不管上面的定義,我們來分析一下抽象工廠模式和工廠模式的不同之處: 在工廠模式中我們爲每一個抽象產品創建了一個抽象工廠,然後爲每一個具

原创 設計模式九——外觀模式

外觀模式介紹 該模式定義了一個高層接口,爲子系統中的多個模塊協同完成某種功能需求提供了一個簡單的對外的接口,用戶可以通過使用該接口來完成該功能。是一種結構型模式,可以隱藏系統的複雜性。 外觀模式參與角色 參與角色 功能

原创 設計模式八——模板方法模式

模板方法模式的介紹 定義一個操作中的算法的骨架,而將一些步驟延遲到子類中。模板方法使得子類可以不改變一個算法的結構即可重定義該算法的某些特定步驟。實質上就類似於繼承,將將各個子類中的重複代碼移動到抽象類或接口中,提高了代碼的複用性