Java单例模式

Java单例模式

 

单例(Singleton)模式是Java中最简单的设计模式之一。这种类型的设计模式属于创建模式,因为此模式提供了创建对象的最佳方法之一。

 

这种模式涉及一个类,它负责创建一个对象,同时确保只创建一个对象。这个类提供了一种方法来访问它的唯一对象,可以直接访问,而不需要实例化类的对象。

 

实现实例

 

我们将创建一个单一对象类 - SingleObject。单个对象(SingleObject)类的构造函数是私有的,并且具有自身的静态实例。

 

SingleObject类提供了一个静态方法来获取其静态实例到外部世界。SingletonPatternDemo或示例类将使用SingleObject类来获取SingleObject对象。

 

 

1

 

创建一个Singleton类,

 

SingleObject.java

 

 

 

 

public class SingleObject {

 

   //create an object ofSingleObject

   private static SingleObjectinstance = new SingleObject();

 

   //make the constructor privateso that this class cannot be

   //instantiated

   private SingleObject(){}

 

   //Get the only objectavailable

   public static SingleObjectgetInstance(){

      return instance;

   }

 

   public void showMessage(){

     System.out.println("Hello World!");

   }

}

Java

2

 

从单例类中获取唯一的对象。

 

SingletonPatternDemo.java

 

public class SingletonPatternDemo {

   public static voidmain(String[] args) {

 

      //illegal construct

      //Compile Time Error: Theconstructor SingleObject() is not visible

      //SingleObject object = newSingleObject();

 

      //Get the only objectavailable

      SingleObject object =SingleObject.getInstance();

 

      //show the message

      object.showMessage();

   }

}

Java

3

 

验证输出,得到结果如下 -

 

Hello World!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值