当前位置: 首页 > news >正文

图片生成器软件西安官网seo公司

图片生成器软件,西安官网seo公司,wordpress主页如何加东西,江西智慧团建登录入口Java 单例模式(Singleton Pattern)详解 🌟 什么是单例模式? 单例模式确保一个类只有一个实例,并提供一个全局访问点来访问它。 🧠 使用场景 配置管理类(如读取配置文件)日志工具类…

Java 单例模式(Singleton Pattern)详解

🌟 什么是单例模式?

单例模式确保一个类只有一个实例,并提供一个全局访问点来访问它。


🧠 使用场景

  • 配置管理类(如读取配置文件)
  • 日志工具类(如 Log4j 的 Logger)
  • 数据库连接池
  • 缓存管理
  • 线程池

✅ 实现方式(Java)

方式一:饿汉式(类加载时就实例化)

public class Singleton {private static final Singleton instance = new Singleton();private Singleton() {}public static Singleton getInstance() {return instance;}
}
  • 优点:简单、线程安全
  • 缺点:类加载时就创建实例,可能浪费资源

方式二:懒汉式(线程不安全)

public class Singleton {private static Singleton instance;private Singleton() {}public static Singleton getInstance() {if (instance == null) {instance = new Singleton();}return instance;}
}
  • 缺点:多线程环境会创建多个实例

方式三:懒汉式 + synchronized(线程安全)

public class Singleton {private static Singleton instance;private Singleton() {}public static synchronized Singleton getInstance() {if (instance == null) {instance = new Singleton();}return instance;}
}
  • 缺点:加锁影响性能

方式四:双重检查锁(DCL)

public class Singleton {private static volatile Singleton instance;private Singleton() {}public static Singleton getInstance() {if (instance == null) {synchronized (Singleton.class) {if (instance == null) {instance = new Singleton();}}}return instance;}
}
  • 优点:懒加载 + 线程安全 + 性能较好
  • volatile 防止指令重排

方式五:静态内部类

public class Singleton {private Singleton() {}private static class Holder {private static final Singleton instance = new Singleton();}public static Singleton getInstance() {return Holder.instance;}
}
  • 优点:利用 JVM 机制,线程安全 + 懒加载 + 高性能

方式六:枚举实现(最推荐)

public enum Singleton {INSTANCE;public void doSomething() {System.out.println("Doing something...");}
}
  • 优点:防反射、防反序列化、天然线程安全
  • 缺点:不能延迟加载

🔐 防止反射与反序列化破坏单例

防反射

private Singleton() {if (instance != null) {throw new RuntimeException("反射破坏单例!");}
}

防反序列化

private Object readResolve() {return instance;
}

📌 各方式对比

实现方式是否懒加载是否线程安全推荐度
饿汉式★★
懒汉式
synchronized★★
DCL★★★★
静态内部类★★★★★
枚举★★★★★(最安全)
http://www.dtcms.com/a/432850.html

相关文章:

  • 广州seo优化北京seo顾问推推蛙
  • 网站代理登录做网站需要多大的图片
  • 黄石做网站的公司广告公司名字三个字
  • 百度网站分析报告变装chinacd wordpress
  • 品牌型网站制作有哪些公司深圳网站设计师
  • 专门做汽车配件的网站石家庄外贸做网站
  • 网站建设服务商有哪些巴中建设局网站
  • 个人搭建网站要多少钱全面的seo网站优化排名
  • 嵌套JSON文件知识详解
  • 南宁月嫂网站建设献县网站建设
  • wordpress视频网站采集器灵武市建设银行网站
  • 虚拟机安装 网络问题
  • 如何修改网站后台登陆入口路劲wordpress影院主题
  • 专业网站策划 西安seo优化是什么职业
  • 响应式企业网站设计与实现广州百度seo
  • 网站首页的重要性佛山网站设计特色
  • 邢台企业做网站哪家好网络服务推广易下拉技巧
  • 自己设计网站湖州建设公司网站
  • 青岛网站建设推进中方元建设工程 网站
  • 南阳网站设计怎么样做好网站运营
  • php网站开发 招聘网站做抢红包活动广告语
  • 恢复原来的网站正能量软件不良网站下载
  • 好的网站怎么设计师动漫网站开发与建设
  • 上海网站建设 微信开发公司跨境自建站模板
  • 在线编程网站开发广州短视频推广
  • 栈之合法括号字符串(RBS)
  • 网站建设工作室图片网站团队建设情况
  • 重点梳理一下数据特征分析方法与常见图表表示
  • 做图素材的网站有哪些网站说服力 营销型网站策划 下载
  • 网站项目建设流程图房地产公司网站模板