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

07年做网站购物网站是多少

07年做网站,购物网站是多少,云南网站建设ynsudong,jsp做网站怎么打开一、单例模式 单例模式#xff08;Singleton Pattern#xff09;是一种创建型设计模式#xff0c;它确保一个类只有一个实例#xff0c;并提供一个全局访问点来访问这个唯一实例。 单例模式中#xff1a; 这个类只能有一个实例这个类必须自己创建自己的唯一实例这个类必须…一、单例模式 单例模式Singleton Pattern是一种创建型设计模式它确保一个类只有一个实例并提供一个全局访问点来访问这个唯一实例。 单例模式中 这个类只能有一个实例这个类必须自己创建自己的唯一实例这个类必须向外提供访问其唯一实例的方式 二、Java中单例模式的实现方式 Java中常见的单例模式实现方式有五种 1.饿汉式Eager Initialization 饿汉式在类加载时就创建单例对象所以在调用时不需要再创建对象直接使用即可。这种实现方式比较简单但在某些情况下可能会造成资源的浪费。 public class SingletonEager {private static final SingletonEager INSTANCE new SingletonEager();private SingletonEager() {}public static SingletonEager getInstance() {return INSTANCE;} }2.懒汉式Lazy Initialization 懒汉式在调用时才创建单例对象这种实现方式避免了资源浪费但会有线程安全问题。 public class SingletonLazyUnsafe {private static SingletonLazyUnsafe instance;private SingletonLazyUnsafe() {}public static SingletonLazyUnsafe getInstance() {if (instance null) {instance new SingletonLazyUnsafe();}return instance;} }// 注意懒汉式在多线程环境下是不安全的3.双重检查锁定Double-Check Locking 双重检查锁定是在懒汉式的基础上加入了双重检查锁机制可以保证线程安全。 public class SingletonDoubleCheck {private volatile static SingletonDoubleCheck instance;private SingletonDoubleCheck() {}//双重检查和加锁来保证线程安全public static SingletonDoubleCheck getInstance() {if (instance null) {synchronized (SingletonDoubleCheck.class) {if (instance null) {instance new SingletonDoubleCheck();}}}return instance;} }4.静态内部类Static Inner Class 静态内部类这个方式是将单例对象作为静态内部类的一个静态变量这种实现方式既可以保证线程安全又可以实现懒加载。其实现原理是外部类加载时并不会立刻加载内部类内部类不被加载就不会去创建实例只有当getInstance方法被调用时才会加载内部类去创建实例而且类加载的过程在JVM中是被设计成线程安全的所以既保证线程安全又实现了懒加载。 public class SingletonStaticInner {private SingletonStaticInner() {}private static class SingletonHolder {private static final SingletonStaticInner INSTANCE new SingletonStaticInner();}public static SingletonStaticInner getInstance() {return SingletonHolder.INSTANCE;} }5.枚举Enumeration 枚举是实现单例模式的最佳方式将单例对象定义为一个枚举类型这种实现方式可以保证线程安全同时也可以防止反射、反序列化破坏单例模式。 public enum SingletonEnum {INSTANCE;// 定义方法或属性public void someMethod() {// ...} }// 使用 SingletonEnum.INSTANCE.someMethod();注意除了枚举方式前面四种方式实现的单例模式都存在反射和反序列化破坏单例的问题 在不做额外处理的情况下通过反射可以突破构造方法的私有化限制强行创建新的实例。而在反序列化时可能会生成新的对象实例而不是保持原有的单例状态。
http://www.w-s-a.com/news/810606/

相关文章:

  • 专业建网站价格门户网站建设 请示
  • 安徽省省博物馆网站建设佛山公司网站设计
  • 温州专业营销网站公司网络建设规划
  • 做模型常说的d站是什么网站wordpress 繁體
  • 给网站做h5缓存机制获取小程序api
  • 网站开发文档东莞市建设网站首页
  • 公共空间设计网站企业门户网站建设教程
  • 网站建设公司 深圳镇江建设质量监督站网站
  • 网站底部版权怎么做软广告经典案例
  • 网站收录突然全部没有了东莞网站建设公司电话
  • 境外企业网站推广免费ppt元素
  • 2018网站建设行业广东网站seo
  • 网站后台加密云服务器2008做网站
  • dw制作一个环保网站模板下载吉安网站建设收费
  • 深圳珠宝网站设计北京高端网站建设优势
  • 合肥企业制作网站wordpress创建网站
  • 织梦网站开发兼职wordpress 中间截取缩略图
  • 南通制作网站旅游搭建网站
  • 专业做商铺的网站个人网页html模板完整代码
  • 什么网站做美食最好最专业关键词推广是什么意思
  • 自助建设网站软件网站导航网站可以做吗
  • 网站模板放哪长沙网站优化分析
  • 泉州网站建设价钱网站模板素材
  • 南通网站托管js建设网站外网
  • 成都企业网站公司wordpress内页模板
  • 58同城建网站怎么做wordpress评论显示数字ip
  • 免费制作论坛网站模板免费下载北京网站制作长沙
  • 旅游网网站建设网站如何自己做seo
  • 如何验证网站所有权做二手家具回收哪个网站好
  • 做哪种网站赚钱项目开发流程