设计模式 单例模式

  • 设计模式 - 单例模式

    单例模式是最简单的设计模式之一。这种设计模式属于创建模式,因为该模式提供了创建对象的最佳方法之一。此模式涉及单个类,该类负责创建对象,同时确保仅创建单个对象。此类提供了一种访问其唯一对象的方法,该对象可以直接访问而无需实例化该类的对象。
  • 操作

    我们将创建一个SingleObject类。SingleObject类的构造函数为private,并且其自身具有静态实例。SingleObject类提供了一个静态方法来将其静态实例传递给外界。SingletonPatternDemo,我们的演示类将使用SingleObject类来获取SingleObject对象。
    dp
    第1步 - 创建一个Singleton类。 SingleObject.java
    
    package com.jc2182.com;
    
    public class SingleObject {
    
       //创建SingleObject的对象
       private static SingleObject instance = new SingleObject();
    
       //将构造函数设为私有,这样该类就直接实例化
       private SingleObject(){}
    
       //用静态方法获取类实例
       public static SingleObject getInstance(){
          return instance;
       }
    
       public void showMessage(){
          System.out.println("Hello World!");
       }
    }
    
    第2步 - 从单例类中获取唯一的对象。 SingletonPatternDemo.java
    
    package com.jc2182.com;
    
    public class SingletonPatternDemo {
       public static void main(String[] args) {
    
          //非法构造
          //编译时 Error: The constructor SingleObject() is not visible
          //SingleObject object = new SingleObject();
    
          //获取唯一可用的对象
          SingleObject object = SingleObject.getInstance();
    
          //show the message
          object.showMessage();
       }
    } 
    
    步骤3 - 验证输出。
     
    Hello World!