21xrx.com
2024-11-22 09:55:39 Friday
登录
文章检索 我的文章 写文章
【教程】用Java实现一个单例类
2023-06-16 10:09:49 深夜i     --     --
Java 单例模式 实例

在Java开发中,单例模式是一种非常常用的设计模式,它可以保持一个类在整个应用程序中只有一个实例,并提供对该实例的全局访问点。在本文中,我们将使用Java语言来实现一个单例类。

首先,我们需要创建一个类,这个类必须有一个私有的静态成员变量来保存唯一的实例。这个变量必须是私有的,以确保只能通过类内部的方法来访问它。然后,我们需要一个私有的构造函数来阻止外部直接创建该类的对象。

接下来,我们将创建一个公共的静态方法来获取该实例。这个方法将首先检查实例是否已经存在,如果存在,则返回现有的实例。如果实例尚不存在,则用私有构造函数创建一个新实例并将其保存到静态变量中。最后,方法将返回这个实例。

代码如下:


public class Singleton {

  private static Singleton instance;

  

  private Singleton() {}

  

  public static Singleton getInstance() {

    if (instance == null) {

      instance = new Singleton();

    }

    return instance;

  }

}

现在,我们来测试一下这个类是否工作正常。我们创建两个不同的对象,并检查它们是否相等。如果它们的引用相等,则说明它们是同一个对象。如果它们的引用不相等,则说明它们是不同的对象。


public class Main {

  public static void main(String[] args) {

    Singleton obj1 = Singleton.getInstance();

    Singleton obj2 = Singleton.getInstance();

    

    if (obj1 == obj2) {

      System.out.println("两个对象是相同的实例。");

    } else {

      System.out.println("两个对象是不同的实例。");

    }

  }

}

执行上述代码,输出结果应该是“两个对象是相同的实例。”

  
  

评论区

{{item['qq_nickname']}}
()
回复
回复