原创 設計模式的六大原則

(以下內容極其後面的關於設計模式的內容均來自《java高手真經(系統架構)》) 設計模式六大原則 原則 含義 具體方法 開閉原則 對外擴展開放 ,對修改關閉 多使用抽象類和接口 里氏替換原則 基類可以被子類替換 使用抽象類繼承,不使用具體

原创 組合模式

組合模式有時候又叫做部分-整體模式,它使我們在處理樹形結構的問題中,模式了簡單元素和複雜元素的概念。 將對象組合成樹形結構以表示“部分-整體”的層次結構。 根據組合模式的特點,它最常用的就是在樹形的就是在樹形結構的表示中,例如,二叉樹、多

原创 java中的協變與逆變

轉自:http://blog.csdn.net/z69183787/article/details/51598345 看下面一段代碼 Number num = new Integer(1); ArrayList<Number>

原创 代理模式(Proxy)

核心思想 代理模式就是給某個對象提供一個代理對象,並且由代理對象控制對源對象的引用 源接口: 被代理對象的接口Soucable:聲明瞭代理對象和代理者的共同接口 public interface Soucable {public voi

原创 橋接模式(Bridge)【還不是特別理解,先留着】

目標接口: public interface Sourcable {public void operation(); } 目標角色: public class SourceSub1 implements Sourcable{@Ove

原创 外觀模式(Facade)

核心思想 外觀模式是由代理模式發展而來的,與代理模式類似,代理模式是一對一的代理,而外觀模式是一對多的代理。 在真實的子系統中,一個子系統可能有很多類組成,子系統的客戶爲了滿足它們的需要,需要和子系統中的一些類進行交互。客戶和 子系統的

原创 適配器模式、裝飾器模式和代理模式的聯繫和區別

聯繫: 三者的限制條件層層遞進,遞進關係如下: 代理模式 裝飾器模式 適配器模式 區別: 適配器模式是將一個類A裝換成另一個類B。類A和類B的接口不同 裝飾着模式是爲一個類A增添新的功能,從而變成類B。類A和類B的接口相同,在構造器中

原创 裝飾器模式(Decorator)

這裏似乎可以解釋之前的一個疑惑: 裝飾器模式與對象的適配器模式的異同: 相同點:都擁有一個目標對象 不同點:適配器模式需要實現另外一個接口,而裝飾器模式必須實現該對象的接口 換句話說,適配器模式就是把一個對象是配成另一個對象,而裝飾器模

原创 AWT的佈局管理器(只有例子)

五種佈局管理器: FlowLayout、BorderLayout、GridLayout、GridBagLayout、CardLayout 1、FlowLayout package gui; import java.awt.*; imp

原创 常用事件分類

窗體事件(WindowEvent)、鼠標事件(MouseEvent)、鍵盤事件(KeyEvent)、動作事件(ActionEvent) 創建事件監聽器對象時可以有兩種方式: 以窗體事件作爲例子: 實現WindowListener接口和繼承

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

核心思想 讓抽象類給出程序的骨架和輪廓,在抽象類中編寫主方法,並申明一些抽象方法,迫使子類實現剩餘的邏輯。 模板方法和策略模式的異同: 相同:通過父類來實現一系列的具體類 不同:策略模式是通過接口或者抽象類來爲子類定義共同的接口,以實

原创 JSP分頁器類(不懂,先留着)

import java.util.List; public class Pager { // 頁面大小protected int[] pageSiz

原创 行爲模式

創建型模式和結構型模式強調的都是靜態的類與對象之間的關係,行爲型模式強調的是類與對象之間的通信關係,以面向對象的關係描述軟件的控制流程。 行爲型模式分爲四類: 父類與子類:策略模式、模板方法模式 兩個類之間:觀察者模式、迭代子模式、責

原创 策略模式(Stategy)

策略模式的核心思想 策略模式是一系列的算法,並將每一個算法封裝起來,使它們還可以相互替換。策略模式讓算法的變化不會影響到使用算法的客戶。 策略模式將一系列的算法包裝爲一個接口抽象類的子類,並由調用者決定調用某一個子類。 策略接口

原创 迭代子模式(Iterator)

核心思想 迭代子模式,又稱Cursor模式。 可以順序地訪問聚集中的對象而不必顯露聚集的內部表象。 它的作用是訪問一個聚集,因此包含兩類對象: 聚集對象:聚集對象中提供了一系列的數據集合,它還需要提供訪問該集合中元素的方法,一