一:设计模式
1.1:面向对象六大设计原则
a:开闭原则
b:单一职责原则
e:里是替换原则
f:依赖倒转原则
g:接口分离原则
h:迪米勒原则
1.2:设计模式
- 创建型(5种) :
工厂模式(重点)、抽象工厂模式、单例模式(重点)、原型模式、 构建者模式
- 结构型(7种):
适配器模式、装饰模式、代理模式 、外观模式、桥接模式、组合模式、享元模式
- 行为型(11种):
模板方法模式、策略模式 、观察者模式、中介者模式、状态模式、责任链模式、命令模式、迭代器模式、访问者模式、解释器模式、备忘录模式
1.3:设计模式具体描述
单例模式
在Java应用中,单例对象能保证在一个JVM中。
优点:
1、某些类创建比较频繁,对于一些大型的对象,这是一笔很大的系统开销。
2、省去了new操作符,降低了系统内存的使用频率,减轻GC压力。
单例模式的例子:
- 饿汉式
public class Student1 {
// 2:成员变量初始化本身对象
private static Student1 student = new Student1();
// 1:构造私有
private Student1() { }
// 3:对外提供公共方法获取对象
public static Student1 getSingletonInstance() {
return student;
}
}
- 懒汉式
public class Student5 {
private Student5() { }
/*
* 此处使用一个内部类来维护单例 JVM在类加载的时候,是互斥的,所以可以由此保证线程安全问题
*/
private static class SingletonFactory {
private static Student5 student = new Student5();
}
/* 获取实例 */
public static Student5 getSingletonInstance() {
return SingletonFactory.student;
}
}