Singleton Pattern (单例模式)

  • 单例模式,确保某个类只能生成一个实例
  • 单例模式的构造方法必须定义为私有(private)的
  • 必须要定义一个静态(static)的方法,作为生成这个对象实例的入口
[java] view plain copy
  1. package com.singleton;  
  2. //静态代码块不一定在最开始执行,比如说 静态代码块 放在 单例模式中,  
  3. //但一般情况下 静态代码块是第一执行的 也就是在类加载时执行, 只执行一次  
  4. class SingletonTest  
  5. {  
  6.     private static SingletonTest singletonTest = new SingletonTest();  
  7.     static  
  8.     {  
  9.         System.out.println("======java 静态代码块========");  
  10.     }  
  11.   
  12.   
  13.     private SingletonTest()  
  14.     {  
  15.         System.out.println("java实现单例模式");  
  16.     }  
  17.       
  18.     public static SingletonTest getInstance()  
  19.     {  
  20.   
  21.         return singletonTest;  
  22.     }  
  23.   
  24. }  
  25.   
  26. public class Singleton  
  27. {  
  28.     public static void main(String[] args)  
  29.     {  
  30.         SingletonTest st = SingletonTest.getInstance();  
  31.         SingletonTest st2 = SingletonTest.getInstance();  
[java] view plain copy
  1.                   //返回true,这两个实例是一样的  
  2.     System.out.println(st == st2);  
  3. }  
原文地址:https://www.cnblogs.com/hoobey/p/5294381.html