初学Java,单例模式(十五)

25 篇文章 0 订阅

下面的代码是使用Java实现设计模式中的单例模式

01.public class Singleton    
02.{  
03.    //使用一个变量来缓存曾经创建的实例  
04.    private static Singleton instance;  
05.    //将构造器使用private修饰,隐藏该构造器  
06.    private Singleton(){}  
07.    //提供一个静态方法,用于返回Singleton实例  
08.    //该方法可以加入自定义的控制,保证只产生一个Singleton对象  
09.    public static Singleton getInstance()  
10.    {  
11.        //如果instance为null,表明还不曾创建Singleton对象  
12.        //如果instance不为null,则表明已经创建了Singleton对象,将不会执行该方法  
13.        if(instance == null)  
14.        {  
15.            //创建一个Singleton对象,并将其缓存起来  
16.            instance = new Singleton();  
17.        }  
18.        return instance;  
19.    }  
20.}  


测试类

01.public class TestSingleton  
02.{  
03.    public static void main(String[] args)   
04.    {  
05.        //创建Singleton对象不能通过构造器,只能通过getInstance方法  
06.        Singleton s1 = Singleton.getInstance();  
07.        Singleton s2 = Singleton.getInstance();  
08.        //都将输出True  
09.        System.out.println(s1.equals(s2));  
10.        System.out.println(s1 == s2);  
11.    }  
12.}  


equals 相等,可以说是完完全全的同一个类,以上代码对C#也是一模一样,只字不改

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值