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

美文的手机网站企业邮箱可以是个人qq邮箱吗

美文的手机网站,企业邮箱可以是个人qq邮箱吗,域名注册网站系统,镇江微网站建设概述上一篇日志中#xff0c;我们介绍了单例模式的概念和基础的应用本节中#xff0c;我们就来介绍一下 java 语言中如何编写单例模式类只适合单线程环境的单例模式public class Singleton {private static Singleton instance null;private Singleton() { }public static S…概述上一篇日志中我们介绍了单例模式的概念和基础的应用本节中我们就来介绍一下 java 语言中如何编写单例模式类只适合单线程环境的单例模式public class Singleton {private static Singleton instance null;private Singleton() { }public static Singleton getInstance(){if (instance null) {instance new Singleton();}return instance;}}这是单例模式的最简单实现private 的构造方法保证了类不会被通过 new 的方式创建同时判断 instance 是否为 null 保证了单线程环境下单例模式运行的正确性但是正如我们反复强调的这种方式是非线程安全的原因在于当多个线程并发执行同时进行判断 instance 为 null 的操作而此时 instance 确实为 null那么所有的线程都将去创建一个单例的对象这显然是我们不希望看到的那么下面我们就来解决这个问题通过同步锁实现线程安全正如上面提到的之所以存在线程安全问题主要是因为判断 instance 是否为 null 与对象的创建是非原子性的那么我们只需要用锁来保证两个操作的原子性即可解决这个问题public class Singleton {private static Singleton instance null;private Singleton() { }public static synchronized Singleton getInstance() {if (instance null) {instance new Singleton();}return instance;}}但是加锁对性能是会造成影响的在并发环境下当一个线程运行到 synchronized 处获取锁进入到 instance 的判断其他所有的并发线程都必须在该线程执行完 instance 的创建操作后才能够继续执行而事实上一旦 instance 被创建这样的等待都将会是白费的双重校验锁双重校验锁对上面的例子进行了优化public class Singleton {private static Singleton instance null;private Singleton() { }public static Singleton getInstance() {if (instance null) {synchronized (Singleton.class) {if (instance null) {instance new Singleton();}}}return instance;}}一旦对象被创建那么程序将不会去请求获取锁而是直接返回 instance最简单的线程安全单例模式public class Singleton {private static Singleton instance new Singleton();private Singleton() { }public static Singleton getInstance() {return instance;}}这段代码看上去非常简单他会在类首次被加载时创建单例的对象jvm 会保证单例对象只被创建一次但是有时我们仅仅是在代码中引用了这个类或者仅仅调用了这个类中的其他方法我们并不希望在我们还不需要通过 getInstance 方法获取对象的时候对象就已经被创建了这是这种方式的主要问题静态内部类public class Singleton {private Singleton() {}private static class SingletonHolder {private final static Singleton instance new Singleton();}public static Singleton getInstance() {return SingletonHolder.instance;}}这种方式解决了上一种方式所存在的问题仅在 getInstance 方法被调用时对象才会被创建使用枚举public enum SingletonEnum {BOOM_MAZE_FACTORY(new BoomMazeFactory()),STANDARD_MAZE_FACTORY(new StandardMazeFactory()),;private MazeFactory mazeFactory;public MazeFactory getMazeFactory() {return mazeFactory;}SingletonEnum(MazeFactory mazeFactory) {this.mazeFactory mazeFactory;}}由于枚举在项目中并不会被常常用到这样的用法就更加难得一见了而事实上这才是最推荐的用法微信公众号欢迎关注微信公众号以技术为主涉及历史、人文等多领域的学习与感悟每周三到七篇推文只有全部原创只有干货没有鸡汤标签技术帖技术分享javasingleton设计模式模式设计单例
http://www.yutouwan.com/news/67109/

相关文章:

  • 文本资料分享网站 建设什么网站上做推广
  • 注册网站可以注销嘛网站子站建设
  • 做旅游景区网站东莞市网络公司
  • 网站一级域名申请优化师的工作内容
  • 东莞app培训网站建设查询建设公司业绩网站
  • 公司网站域名主机dw网页设计代码模板源代码
  • 在线视频教学网站建设360优化大师历史版本
  • 山东省建设厅教育网站wordpress登陆post
  • 英语教学网站建设意见旅游手机网站开发
  • 网站有必要使用伪静态么公司里面有人员增减要去哪个网站做登记
  • 网站空间购买哪个好河北伟创网络技术有限公司
  • 建app网站要多少钱泰安市房产交易中心官网
  • 网站建设公司用5g软件开发工程师的薪资待遇
  • 大学生做兼职的网站有哪些网站后台管理代码
  • 手机网站发布页电脑版网上商城程序
  • 如何在个人电脑用源码做网站六盘水南宁网站建设
  • 网站微信付款调用建设网站应该加什么服务器
  • 做网站需要买域名吗wordpress多站点无法访问
  • 织梦网站地图制作教程哪里可以学ps软件网课
  • 宜兴市网站建设泉州网站建设方案服务
  • 玉树网站建设公司精美个人网站
  • 域名注册网站查询安卓app是用什么语言开发的
  • 家具建设企业网站请人开发一个网站需要多少钱
  • 太原seo软件网站优化人员通常会将目标关键词放在网站首页中的
  • 门户网站开发文档钢筋网片每平米重量
  • 一个高端的网站设计什么网站可以做线上邀请函
  • 天然气集团有限公司原副总经理广州中小企业seo推广运营
  • 留言网站建设上海软件开发公司排名
  • 公司做网站提供资料找客网怎么样
  • 有网站源程序怎么做网站后台北京seo顾问