专业编程基础技术教程

网站首页 > 基础教程 正文

【设计模式】java代码示例什么是单例模式

ccvgpt 2024-08-05 12:27:39 基础教程 10 ℃

单例模式,听起来好像很复杂,但其实很好理解。想象一下,在一家公司里,CEO这个职位是独一无二的,整个公司只能有一个CEO,不可能有两个或更多的CEO同时存在。这就是单例模式的现实生活中的一个例子。

在编程中,单例模式也是类似的。有些对象,我们只想在整个程序运行期间只创建一个实例,比如一个全局的配置类,或者一个用来管理数据库连接的类。这些类的对象如果创建多个实例,不仅浪费资源,还可能导致数据不一致等问题。所以,我们就使用单例模式来确保一个类只有一个实例,并提供一个全局的访问点。

【设计模式】java代码示例什么是单例模式

Java示例代码

下面是一个简单的Java单例模式的示例代码:

public class Singleton {  
    // 定义一个私有的静态实例,用来存储唯一的实例  
    private static Singleton instance;  
  
    // 将构造函数私有化,防止外部通过new Singleton()创建实例  
    private Singleton() {}  
  
    // 提供一个静态的公有方法,用来获取唯一实例  
    public static Singleton getInstance() {  
        // 如果实例为null,则创建新的实例,否则直接返回已有的实例  
        if (instance == null) {  
            instance = new Singleton();  
        }  
        return instance;  
    }  
  
    // 可以添加其他方法或属性...  
    public void doSomething() {  
        // ...  
    }  
}

使用示例:

public class Main {  
    public static void main(String[] args) {  
        // 获取Singleton的唯一实例  
        Singleton instance1 = Singleton.getInstance();  
        Singleton instance2 = Singleton.getInstance();  
  
        // 判断两个引用是否指向同一个对象  
        System.out.println(instance1 == instance2); // 输出: true  
  
        // 调用实例的方法  
        instance1.doSomething();  
        instance2.doSomething();  
    }  
}

最近发表
标签列表