单例模式

来源:互联网 发布:软件开发做账 编辑:程序博客网 时间:2024/06/05 22:50


一、单例模式定义

单例模式的意思就是只有一个单例,单例模式确保某一个类只有一个实例,而且自行实例化并向整个系统提供这个实例,这个类成为单例类。


二、单例模式要点

某个类只能有一个实例。

它必须自行创建这个实例。

它必须自行向整个系统提供这个实例。


三、单例模式实例

a、饿汉式单例


//饿汉式单例类.在类初始化时,已经自行实例化   public class SingleTonDemo {public static void main(String[] args) {SingleTon ton1 = SingleTon.getInstance();SingleTon ton2 = SingleTon.getInstance();}}class Singleton {      private Singleton() {}      private static final Singleton single = new Singleton();      private SingleTon(){System.out.println("SingleTon");}    //静态工厂方法     public static Singleton getInstance() {     return single;     } }


饿汉式在类创建的同时就已经创建好一个静态的对象供系统使用,以后不再改变,所以天生是线程安全的。


b、懒汉式单例


public class SingleTonDemo {public static void main(String[] args) {SingleTon ton1 = SingleTon.getInstance();SingleTon ton2 = SingleTon.getInstance();}}class SingleTon{private static SingleTon singleTon = null ;private SingleTon(){System.out.println("SingleTon");}public static SingleTon getInstance(){if(singleTon == null){singleTon = new SingleTon();}return singleTon;}}

原创粉丝点击