Update Java_设计模式.md

This commit is contained in:
heibaiying 2019-12-27 15:19:19 +08:00 committed by GitHub
parent f66a0eadce
commit cd2a06e917
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -124,7 +124,7 @@ public class StaticInnerClassHungrySingleton {
} }
``` ```
饿汉式单例的优点在于其不存在线程安全问题,对象的唯一性由虚拟机在类初始化创建时保证;其缺点在于如果对象的创建比较消耗资源,并且单例对象不一定会被使用到,此时就会造成资源的浪费。 饿汉式单例的优点在于其不存在线程安全问题,对象的唯一性由虚拟机在类初始化创建时保证;其缺点在于如果对象的创建比较消耗资源,并且单例对象不一定会被使用时就会造成资源的浪费。
### 1.2 懒汉式单例 ### 1.2 懒汉式单例
@ -1534,7 +1534,6 @@ XXX手机已经发货请注意查收...
运用共享技术来有效地支持大量细粒度对象的复用,线程池,缓存技术都是其代表性的实现。在享元模式中存在以下两种状态: 运用共享技术来有效地支持大量细粒度对象的复用,线程池,缓存技术都是其代表性的实现。在享元模式中存在以下两种状态:
+ 内部状态,即不会随着环境的改变而改变状态,它在对象初始化时就已经确定; + 内部状态,即不会随着环境的改变而改变状态,它在对象初始化时就已经确定;
+ 外部状态,指可以随环境改变而改变的状态。 + 外部状态,指可以随环境改变而改变的状态。
通过享元模式,可以避免在系统中创建大量重复的对象,进而可以节省系统的内存空间。 通过享元模式,可以避免在系统中创建大量重复的对象,进而可以节省系统的内存空间。
@ -1882,7 +1881,6 @@ groupLeader.approval(new Application("婚假单", 10));
**抽象父类** **(Abstract Class)**:负责给出一个算法的轮廓和骨架。它由一个模板方法和若干个基本方法构成: **抽象父类** **(Abstract Class)**:负责给出一个算法的轮廓和骨架。它由一个模板方法和若干个基本方法构成:
+ 模板方法:定义了算法的骨架,按某种顺序调用其包含的基本方法。 + 模板方法:定义了算法的骨架,按某种顺序调用其包含的基本方法。
+ 基本方法:可以是具体的方法也可以是抽象方法,还可以是钩子方法(在抽象类中已经实现,包括用于判断的逻辑方法和需要子类重写的空方法两种)。 + 基本方法:可以是具体的方法也可以是抽象方法,还可以是钩子方法(在抽象类中已经实现,包括用于判断的逻辑方法和需要子类重写的空方法两种)。
**具体子类** **(Concrete Class)**:实现抽象类中所定义的抽象方法和钩子方法。 **具体子类** **(Concrete Class)**:实现抽象类中所定义的抽象方法和钩子方法。