8.5 面向性能优化的代码调优(主要是几种设计模式)
1.单例模式
-设置静态变量来存储
-单一实例对象
-将构造器设置为 private ,从而 client 无法 new
-在构造器中 new 新实例
-提供静态方法来获取单一实例对象
2.轻量模式
优点:考虑文本编辑器中的“字符”,同一字符出现很多次,只是字号,颜色不同。
分为内部状态和外部状态,内部特征都不变,外部特征不是固定的,需要在不同场合context分别指派/计算其值。
3.原型模式
通过克隆而不是new来创建对象。
Override clone方法,Object.clone()是protected,自定义类无法调用,因此要override。
浅拷贝与深拷贝
浅拷贝:使用一个已知实例的成员变量对新创建实例的成员变量逐个
赋值。
深拷贝:类的拷贝方法不仅要复制对象的所有非引用成员变量值 ( 简单
数据类型 ) ,还要为引用类型 ( 对象 ) 的成员变量创建新的实例,并且初
始化为原对象的值。
4.对象池模式 Object Pool Pattern