java 的单例设计模式
来源:互联网 发布:淘宝定制类买家要退款 编辑:程序博客网 时间:2024/05/22 00:39
/*
单列设计模式:就让一个类永远只产生一个对象
恶汉式:没有线程安全问题,开发中直接使用
1.私有化构造函数
2.创建声明一个私有的静态的最终的本类对象
3.提供一个公共的返回值为本类对象的一个方法
懒汉式:
1.私有化构造函数
2.声明一个私有的静态本类对象
3.提供一个公共的返回值为本类对象的一个方法
在返回本类对象变量的时候要先判断这个变量是否等于null,如果等于null就创建本类的对象,如果不等于null就直接返回
单列设计模式:就让一个类永远只产生一个对象
恶汉式:没有线程安全问题,开发中直接使用
1.私有化构造函数
2.创建声明一个私有的静态的最终的本类对象
3.提供一个公共的返回值为本类对象的一个方法
懒汉式:
1.私有化构造函数
2.声明一个私有的静态本类对象
3.提供一个公共的返回值为本类对象的一个方法
在返回本类对象变量的时候要先判断这个变量是否等于null,如果等于null就创建本类的对象,如果不等于null就直接返回
*/
用代码解释下为什么要这么做
class Test{ public static void main(String[] args){ System.out.println("3"); Father1 fa1=Father1.getFather1(); System.out.println("4"); Father fa=Father.getFather(); System.out.println("5"); Father1 faa=new Father1(1); }}class Father{private Father(){//构造私有保证不能在别的类里初始化 System.out.println("2");}private static final Father fa=new Father();//final保证只实例化一个public static Father getFather(){//加逻辑,static保证别的类能通过类.方法的得到它 return fa;}}class Father1{private Father1(){ System.out.println("1");}public Father1(int a){}//不私有化的后果private static Father1 fa;//public static Father1 getFather1(){//是通过加逻辑保证只实例化一个 if(fa==null) fa=new Father1(); return fa;}}//懒汉式可能出现a创建引用后挂起,b因此可以判断为真而实例化,a继续后也实例化,由于不是终态而引起冲突;但设为终态需要在创建对象成功前初始化,在这里不能设为终态
阅读全文
0 0
- java的设计模式---单例模式
- java的设计模式---单例模式
- java的设计模式--单例模式
- JAVA单例设计模式的理解
- java单例设计模式的实现
- java 的单例设计模式
- Java的单例设计模式
- java的单例设计模式解读
- java的单例设计模式
- java的单例设计模式
- Java的单例设计模式Singleton
- Java的单例设计模式
- java 的单例设计模式
- java 设计模式,单例设计模式
- java设计模式-单例设计模式
- java设计模式-单例设计模式
- Java设计模式 单例设计模式
- Java设计模式------单例设计模式
- opencv使用detectMultiScale报错原因
- 设计模式之工厂模式的学习心得
- Lock 和Synchronized 区别
- 2017年6月22日 工作日记
- 2017-06-22 Gbase8t SELECT
- java 的单例设计模式
- 获取页面全路径
- 图片验证码的生成
- android 中解决scrollview和listview冲突时底部多出一个空白
- php插入数据库中文数据乱码问题
- Java设计模式之观察着模式
- Android Java层与Native通信踩过的坑
- nginx 端口转发跳转问题
- boost::property_tree实例用法