java-单例笔记
来源:互联网 发布:淘宝能买到烟吗 编辑:程序博客网 时间:2024/05/17 01:58
0:懒汉式 忽略
1.饿汉式: 提前实例化 >>缺陷并不明显 我理解看来:并不是程序一运行 就实例化 占用内存的
public class Singleton 实际是在类加载时才会实例化 也就是说 只有使用到该类时才会实例化
{ 如Singleton.调用它 才会自动加载Singleton类
private Singleton(){ 并不是 在项目启动的时候就初始化
}
private static Singleton instance = new Singleton();
//static { } 静态块 效果跟这个是一样的
//变量和块 是按从上到下顺序加载
private static Singleton getInstance(){
return instance;
}
}
2.内部类式: java类延迟加载机制
public class Singleton
{
private Singleton(){}
private class SingletonHoledr(){
// ->这边 不是static 故 不会在加载Singleton类的时候就 加载SingletonHoledr
//只有当这个类被加载时 才会初始化这个变量
private static Singleton instance = new Singleton();
}
private static Singleton getInstance(){
return SingletonHoledr.instance;
}
}
衍生分析:
Classloader的特性. 实际上如果没需要静态变量,函数,类加载 和饿汉式: 并不相差多少的.
3.枚举式
《Effective Java》作者推荐使用的方法,优点:不仅能避免多线程同步问题,而且还能防止反序列化重新创建新的对象
4.双检索式 :当前的内存模型中无效
可用来学习
一.关键字volatile 二.可用来运用思路 双检索
- java-单例笔记
- 单例模式笔记(java)
- Java单例模式笔记
- java笔记 单例模式
- java单例模式笔记
- java学习笔记(单例模式)
- java学习笔记_单例模型
- 【java笔记】单例设计模式
- Java学习笔记之单例模式
- java单例模式 - 学习笔记
- 黑马程序员-------Java笔记-------单例模式
- java笔记-单例设计模式
- Java笔记5:单例模式
- Java学习笔记之单例模式
- Java笔记 - 单例设计模式
- Java笔记 - 多线程-单例设计模式
- Java学习笔记之单例模式
- Java学习笔记-单例模式等
- 【算法设计与分析】9、最小生成树,贪心算法实现
- 编写自己的json解析工具二
- 当男友在创业
- 萝卜FTP工具续
- 微信6.0版的一些设计细节
- java-单例笔记
- 慎用text-indent的负值
- 我的javascript
- Apache James 搭建自己的邮件服务器
- 复习之游戏商城
- Host 'localhost' is not allowed to connect to
- 求最大连续递增数字串(如“ads3sl456789DF3456ld345AA”中的“456789”)
- 接口
- 推送有道——游戏篇