auto commit
This commit is contained in:
parent
95f405f74a
commit
baa0b51a13
|
@ -501,7 +501,7 @@ CheesePizza
|
|||
|
||||
在简单工厂中,创建对象的是另一个类,而在工厂方法中,是由子类来创建对象。
|
||||
|
||||
下图中,Creator 有一个 anOperation() 方法,这个方法需要用到一组产品类,这组产品类由 factoryMethod() 方法创建。该方法是抽象的,需要由子类去实现。
|
||||
下图中,Creator 有一个 anOperation() 方法,这个方法需要用到一组产品对象,这组产品对象由 factoryMethod() 方法创建。该方法是抽象的,需要由子类去实现。
|
||||
|
||||
<div align="center"> <img src="../pics//903093ec-acc8-4f9b-bf2c-b990b9a5390c.jpg"/> </div><br>
|
||||
|
||||
|
@ -617,7 +617,7 @@ ChicagoStyleCheesePizza is making..
|
|||
|
||||
**1. 模式定义**
|
||||
|
||||
提供一个接口,用于创建 **相关的对象家族** ,而不需要明确指定具体类。
|
||||
提供一个接口,用于创建 **相关的对象家族** 。
|
||||
|
||||
**2. 模式类图**
|
||||
|
||||
|
@ -760,7 +760,7 @@ MarinaraSauce
|
|||
|
||||
**3. 懒汉式-线程不安全**
|
||||
|
||||
以下实现中,私有静态变量被延迟化实例化,这样做的好处是,如果没有用到该类,那么就不会实例化私有静态变量,从而节约资源。
|
||||
以下实现中,私有静态变量 uniqueInstance 被延迟化实例化,这样做的好处是,如果没有用到该类,那么就不会实例化 uniqueInstance,从而节约资源。
|
||||
|
||||
这个实现在多线程环境下是不安全的,如果多个线程能够同时进入`if(uniqueInstance == null)` ,那么就会多次实例化 uniqueInstance。
|
||||
|
||||
|
@ -962,7 +962,7 @@ Light is on!
|
|||
|
||||
**2. 模式类图**
|
||||
|
||||
适配器类(Adapter)组合一个待适配的对象(Adaptee),Adapter 把操作委托给 Adaptee。
|
||||
适配器(Adapter)组合一个适配者(Adaptee),Adapter 把操作委托给 Adaptee。
|
||||
|
||||
<div align="center"> <img src="../pics//253bd869-ea48-4092-9aed-6906ccb2f3b0.jpg"/> </div><br>
|
||||
|
||||
|
@ -1180,11 +1180,11 @@ Tea.addCondiments
|
|||
|
||||
**2. 模式类图**
|
||||
|
||||
- Aggregate 是聚合类,其中 createIterator() 方法可以产生一个 Iterator 对象;
|
||||
- Aggregate 是聚合类,其中 createIterator() 方法可以产生一个 Iterator;
|
||||
|
||||
- Iterator 主要定义了 hasNext() 和 next() 方法。
|
||||
|
||||
- Client 组合了 Aggregate 对象,为了迭代遍历 Aggregate 对象,也需要组合 Iterator 对象。
|
||||
- Client 组合了 Aggregate,为了迭代遍历 Aggregate,也需要组合 Iterator。
|
||||
|
||||
<div align="center"> <img src="../pics//439deca7-fed0-4c89-87e5-7088d10f1fdb.jpg"/> </div><br>
|
||||
|
||||
|
|
Loading…
Reference in New Issue
Block a user