Creational Patterns Part 3/5: Singleton Pattern

Creational Patterns Part 3/5: Singleton Pattern

目录


Definition

Singleton Pattern应该是设计模式中最简单的模式之一了。该模式保证一个类只会产生一个对象并且提供一个公共的接口来访问这个唯一的对象。

何时使用?当希望一个类只有一个实例时。

使用频率:Frequency of use Medium High


UML Class Diagram

Singleton Pattern


Implementation

注意使用单例模式的类的构造方法必须是私有的。

// SingletonDemo.java
package designpatterns.creationalpatterns.singleton;

public class SingletonDemo {
    public static void main(String[] args) {
        Singleton s1 = Singleton.getInstance();
        Singleton s2 = Singleton.getInstance();

        System.out.println(s1 == s2);
    }   
}

class Singleton {
    private static Singleton instance = new Singleton();
    private Singleton() {}

    public static Singleton getInstance() {
        return instance;
    }
}

// output
true
posted @ 2016-05-30 22:13  1202zhyl  阅读(103)  评论(0编辑  收藏  举报