博文

目前显示的是标签为“设计模式”的博文

单例模式完全版

应用 资源管理器 属性管理器 多例是为了存储数据的,单例是为了共享可以减少资源消耗 饿汉式–JVM保证线程安全(简单推荐) 因为 JVM可以保证每个类只加载一次,所以设置为static就可以保证对象只会被new一次 ,static是在加载链接初始化中的初始化就会赋值的,只执行一次。 多线程都没关系 但是用到与否,类加载就已经实例化 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 package com.deltaqin.designPattern.d01_singleton; /** * @author deltaqin * @date 2021/3/26 1:39 下午 */ public class Single01 { private static final Single01 INSTANCE = new Single01 (); public static Single01 getInstance () { return INSTANCE; } public void m () { System.out.println( "hi" ); } public static void main (String[] args) { for ( int i = 0 ; i < 100 ; i++) { new Thread (()->{ System.out.println(getInstance().hashCode()); }).start(); } } } 懒汉式–自己保证线程安全 锁加在方法:效率变低 方法内部的代码块:只加在需要的时候, 需要双重验证,否则多个线程进入第一个 if 的时候,其他线程先执行获得锁初始化,自己就重复初始化了。 volati...