Java中的单例模式
2018-11-05 13:04
92 查看
单例设计模式
JavaSE:工厂+代理+单例
单例设计指的是一个类只允许产生一个实例化对象。 思路:a. 对象如何产生?通过类的构造方法 b. 要想限制对象的产生?通过构造方法限制 特点:构造方法私有化,外部无法产生新的实例化对象,只能通过static方法取得实例化对象 分类:a. 饿汉式单例模式 b. 懒汉式单例模式
//饿汉式单例模式:上来就new class Singleton{ //在类的内部提供私有的实例化对象 private static final Singleton INSTANCE = new Singleton(); //构造方法私有化,外部无法调用构造即外部不能够产生新的实例化对象 private Singleton(){ } //外部通过get取得实例化对象 public static Singleton getInstance(){ return INSTANCE; } public void print(){ System.out.println("helloworld!"); } } public class Test{ public static void main(String[] args){ Singleton singleton = null; singleton = Singleton.getInstance(); singleton.print(); } }
//懒汉式单例模式:用时再new(双重加锁单例模式) class Singleton{ private static Singleton instance; private Singleton(){} public static Singleton getInstance(){ if(instance == null){ //表示此时还没有实例化 instance = new Singleton(); return instance; } return instance; } public void print(){ System.out.println("哈哈哈!"); } } public class Test{ public static void main(String[] args) { Singleton singleton = null; singleton = Singleton.getInstance(); singleton.print(); } }阅读更多
相关文章推荐
- java设计模式之模板方法模式
- java设计模式-工厂方法模式
- 快速理解Java中的五种单例模式
- Java设计模式研究之策略模式
- Java开发中的23种设计模式详解(转)
- java建造者模式
- JAVA中的策略模式
- [转]趣谈JAVA设计模式
- Java 单例模式详解
- Java基础-代理模式
- Design Pattern - Java 设计模式实战精髓
- java设计模式之代理模式(8)
- java IO之 字符流 (字符流 = 字节流 + 编码表) 装饰器模式
- java设计模式学习之观察者模式
- php,java实现代理模式
- Java开发中的23种设计模式详解
- Java的单例模式实现
- java设计模式(五)--桥接模式
- Java语言对象池(Object pool)设计模式实例
- java 设计模式-创建模式之工厂方法模式1