java设计模式:单例模式
2016-09-23 00:00
323 查看
java设计模式:单例模式
单例模式的两种情况:
饿汉模式public class Demo{ // 1 创建私有化的构造方法 外部就不能 直接访问了 就不能直接实例化当前类对象了 private Demo(){ } // 2 创建 静态变量 用来保存对象内存地址的 注意数据类型 要和类名相同,因为内存地址是类名数据类型的 private static Demo demo = null; //静态方法 , 让外部 可以通过调用这个方法 就能 实例化这个类对象 public static Demo getdemo(){ //我只想让它实例化一次 所以判断 ,当我demo 为空的时候,在执行以下java语句,当demo 不为空的时候,就跳过,直接输出后面的java语句 if (demo ==null) { demo = new a();//实例化当前类对象 并赋值给 demo return demo ;//返回值,把demo 里面的内存地址 返回到方法名 外部直接调用方法,就能获取本类的内存地址 } return demo ;//当demo 不为空的时候,就直接返回值 把 demo 返回到方法名 所以 这个类的对象,只实例化了一次吧 } }
懒汉模式
public class Demo{ private Demo(){//私有化无参构造 } private static Demo demo = new Demo(); //声明静态变量 并赋值 值为本类的内存地址 public static Demo getdemo(){//静态方法 外部可以通过调用次方法 获得本类的内存地址 return demo ;//返回值 demo demo 保存的是内存地址 所以返回 demo 就能把内存地址 返回到方法 外部就能使用了 } }
相关文章推荐
- 举例讲解C#编程中对设计模式中的单例模式的运用
- php设计模式之单例模式实例分析
- PHP基于单例模式实现的数据库操作基类
- JavaScript编程的单例设计模讲解
- C#设计模式之单例模式实例讲解
- Javascript实现单例模式
- JS模式之单例模式基本用法
- 深入理解JavaScript系列(25):设计模式之单例模式详解
- Android设计模式系列之单例模式
- 使用设计模式中的单例模式来实现C++的boost库
- Java单例模式、饥饿模式代码实例
- java设计优化之单例模式
- java两种单例模式用法分析
- C# 设计模式系列教程-单例模式
- Android源码学习之单例模式应用及优点介绍
- JavaScript实现设计模式中的单例模式的一些技巧总结
- C++设计模式之单例模式
- C#窗口实现单例模式的方法
- Java线程安全中的单例模式
- PHP单例模式详细介绍