单例模式
- 饿汉式:无法延迟加载
- 懒汉模式:线程安全
synchronized
- DCL:会被指令重排序 volilate 修饰单例
- 内部类:
jvm 在类加载时保证数据同步
内部类不会被使用,静态方法在第一次被调用的时候才会加载静态内部类
利用 jvm 本身机制
static 内存中独一份
final 线程安全(无法修改)
性能优越 线程安全 延迟加载
- 枚举:线程安全
android 中的应用
Application 单例 作为工具类的全局上下文
Builder模式
创建复杂对象,将组成部分和创建分开来。
- 场景
当构造一个对象需要很多参数,并且构造参数的个数不固定。
网友评论