原创 Object 淺讀

文章目錄一、源碼二、hashCode()三、equals()四、clone()1、淺拷貝2、深拷貝3、clone() 的替代方案參考: 一、源碼 /* 通過JNI對本地方法進行註冊,映射本地函數與Java方法之間的關係*/ pr

原创 認識 Spring Data JPA

### JPA 簡介   JPA (``Java Persistence API``) ,Java持久層API,是JDK 5.0註解或XML描述對象-關係表的映射關係,並將運行期的實體對象持久化到數據庫中的持久化模型。 JPA 爲對象關係

原创 阿里雲ECS(CentOS7)快速安裝MySQL5.7

文章目錄1.安裝2.Navicat連接3.MySQL修改root用戶密碼 1.安裝 下載並安裝 yum repository 官方下載 ,選擇自己想要的版本。 [root@localhost ~]# wget -i -c h

原创 外觀模式(Facade Pattern)

意圖 提供了一個統一的接口,用來訪問子系統中的一羣接口。外觀定義了一個高層接口,讓子系統更容易使用。 動機 當一個系統的功能越來越強,子系統會越來越多,客戶對系統的訪問也變得越來越複雜。這時如果系統內部發生改變,客戶端也要跟着

原创 模板方法模式(Template Method Pattern)

意圖 在一個方法中定義一個算法得骨架,而將一些步驟延遲到子類中。模板方法使得子類可以在不改變算法結構的情況下,重新定義算法中的某些步驟。 動機 在設計一個系統時,明確了算法所需的關鍵步驟,而且確定了這些步驟的執行順序,但某些步

原创 橋接模式(Bridge Pattern)

意圖 將抽象與實現分離,使它們可以獨立變化。 用組合關係代替繼承關係來實現,從而降低了抽象和實現這兩個可變維度的耦合度。 動機 對於具有兩個或多個變化維度的系統,例如:支持不同平臺和不同文件格式的視頻播放器,我們可以使用橋接模

原创 策略模式(Strategy Pattern)

意圖 定義了算法簇,分別封裝起來,讓他們之間可以互相替換。策略模式讓算法得變化獨立於使用算法得客戶。 動機 生活中,我們常常遇到實現某種目標存在多種方式可供選擇的情況,例如:我們可以選擇自駕、搭地鐵、搭公交或者騎自行車等方式上

原创 裝飾者模式(Decorator Pattern)

意圖 動態地將責任附加到對象上。 在不改變現有對象結構的情況下,使用組合關係創建裝飾對象來包裹現有對象,動態地給該對象增加一些職責。 動機 在軟件開發過程中,有時想用一些現存的組件。這些組件可能只是完成了一些核心功能。但在不改

原创 組合模式(Composite Pattern)

意圖 允許你將對象組合成樹形結構來表現“整體/部分”。組合能讓客戶以一致的方式處理個別對象以及對象組合。 動機 形如:有一個樹形結構的菜單,子菜單和可能還帶有菜單項的子菜單,那麼任何菜單都是一種“組合”。因爲它既可以包含其他菜

原创 狀態模式(State Pattern)

意圖 允許對象在內部狀態改變時改變它的行爲,對象看起來好像修改了它所屬的類。 動機 在軟件開發過程中,應用程序中的有些對象可能會根據不同的情況做出不同的行爲,我們把這種對象稱爲有狀態的對象,而把影響對象行爲的一個或多個動態變化

原创 享元模式(Flyweight Pattern)

意圖 運用共享技術來有効地支持大量細粒度對象的複用。 相同對象只要保存一份,這降低了系統中對象的數量,從而降低了系統中細粒度對象給內存帶來的壓力。 動機 在面向對象程序設計過程中,有時會面臨要創建大量相同或相似對象實例的問題。

原创 代理模式(Proxy Pattern)

意圖 爲另一個對象提供一個替身或佔位符以控制對這個對象的訪問。 動機 在某些情況下,一個客戶不能或者不想直接訪問另一個對象,這時可以找一箇中介幫忙完成某項任務,這個中介就是代理對象。 適用性 根據代理模式的使用目的,常見的代理

原创 適配器模式(Adapter Pattern)

意圖 將一個類的接口,轉換成客戶期望的另一個接口。 動機 生活中,經常出現兩個對象因接口不兼容而不能在一起工作的實例,這時需要轉換接口進行適配。 適用性 適配器模式通常適用於以下場景: 以前開發的系統存在滿足新系統功能需求的

原创 面向對象設計原則

面向對象設計原則 S.O.L.I.D S.O.L.I.D是面向對象設計和編程(OOD&OOP)中幾個重要編碼原則(Programming Priciple)的首字母縮寫,是敏捷開發以及自適應軟件開發的基本原則的重要組成部分。

原创 單例模式

單例模式(Singleton Pattern) 意圖 確保一個類只有一個實例,並提供一個全局訪問點。 單例模式的三個要點:1.單例類只有一個實例對象;2.該單例對象必須由單例類自行創建;3.單例類對外提供一個訪問該單例的全局訪