zoukankan      html  css  js  c++  java
  • 单例模式-singleton

    package day08_static;
    
    /**
    * 
    * @author tarena
    * 单例设计模式
    * 保证实例唯一,节省内存,对象不会改变
    * 只能new一次,把new写成一个方法,调用的时候只能调用这个方法
    * 
    */
    
    public class Singleton {
    
       private static Singleton si;
    
       private Singleton() {}//私有构造
    
       public static Singleton getInstance() {
            if (si == null) {// 判断是否为null,如果为null,则new一次,确保只有一个对象
               si = new Singleton();
           }
            return si;
        }
    }
    
    /**
    * 单例测试类
    * @author hsy
    *
    */
    
    public class TestSingleton {
    
       public static void main(String[] args) {
           Singleton si1 = Singleton.getInstance();
           Singleton si2 = Singleton.getInstance();
           System.out.println(si1 == si2);
       }
    }
    

      

    运行结果输出为 true 

    说明单例模式中,singleton的对象只new 一次。

  • 相关阅读:
    HDU
    POJ
    快速幂运算
    RocketMQ集群
    RocketMQ角色介绍
    RocketMQ初探
    MySQL 串行隔离级别小记
    分布式事务笔记
    MySQL分库分表篇
    MySQL主从篇
  • 原文地址:https://www.cnblogs.com/lxsky/p/java.html
Copyright © 2011-2022 走看看