JAVA设计模式
一、单例模式
1、饿汉式(在类初始化时直接创建对象,不存在线程安全)
(1) 直接实例化
public class Sigleton{ //声明一个静态变量 public static final Sigleton INSTANCE =new Sigleton(); //私有化构造方法 private Sigleton(){} }
(2) 静态代码块饿汉式
public class Sigleton{ public static final Sigleton INSTANCE;
//静态代码块 static{ instance=new Sigleton(); } //私有化构造方法 private Sigleton(){ } }
2、懒汉式(需要时构建)
(1) 线程不安全
public class Sigleton{ //私有化静态变量 private static Sigleton instance; //私有化构造方法 private Sigleton(){} //创建一个获取实例的静态方法 public static Sigleton getInstance(){ if(instance==null){ instance=new Sigleton(); } return instance; } }
(2)静态内部类形式(线程安全)
public class Sigleton{ //私有化构造器 private Sigleton(){} //创建内部静态类 private static class Inner{ private static final Sigleton INSTANCE=new Sigleton(); } //创建获取类的静态方法 public static Sigleton getInstance(){ return Inner.INSTANCE; } }
-----------------------有任何问题可以在评论区评论,也可以私信我,我看到的话会进行回复,欢迎大家指教------------------------
(蓝奏云官网有些地址失效了,需要把请求地址lanzous改成lanzoux才可以)