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

南阳做网站的华为企业管理软件

南阳做网站的,华为企业管理软件,开发一款app需要哪些技术,自己做的网站字体变成方框在着里我们先了解什么是单例模式。 就是某个类在进程中只能有单个实例,这里的单例模式需要一定的编程技巧,做出限制,一旦程序写的有问题,创建了多个实例,编程就会报错。 如果我们学会了单例模式,这种模式…

在着里我们先了解什么是单例模式。

就是某个类在进程中只能有单个实例,这里的单例模式需要一定的编程技巧,做出限制,一旦程序写的有问题,创建了多个实例,编程就会报错。

如果我们学会了单例模式,这种模式会提高我们的下限。

其中单例模式包含了两种模型,一种是饿汉模型,另一种是懒汉模型,这里的懒汉模型尤为重要,面试也会考。


饿汉模型


这里的单列就是指一个对象,instance。

如代码:

class Singleton {private static Singleton instance = new Singleton();public static Singleton getInstance(){return instance;}
}

这里我们采用 static 来修饰 instance ,因为当初始化的时候只执行一次。

还有当我们想要获取 instance 变量的时候,直接调用getInstance方法就行了,这样我们不用重新在new了。

上述的代码,是饿汉模型。


懒汉模型


这里的懒汉模型不是在程序创建的时候new,而是第一次使用的时候才去创建,这样就可以节省当不用时,我们不用创建的开销。

如代码:

class SingletonLazy {private static SingletonLazy instance = null;public SingletonLazy getinstance(){if(instance == null){instance = new SingletonLazy();}return instance;}}

如上述代码,我们可以看到,就是调用的时候就用。

那么,如果这样是否会引起线程安全问题呢?

答案会引起线程安全问题。

在这里我们当有两个线程同时运行的时候,其线程1和线程2,同时进入if判定,都为true,此时我们就会出现两个,new了,直接就报错了。

那么这里我们加上锁之后,会不会线程安全了呢?

如代码:

class SingletonLazy {private static SingletonLazy instance = null;public static Object locker = new Object();public SingletonLazy getinstance(){if(instance == null){synchronized (locker){instance = new SingletonLazy();}}return instance;}}

这里加上锁也是不安全的,我们具体分析一下。还是两个线程,当出现这种执行顺序时,

如图:

由图中我们可以知道,这种加锁,仍会 new两个。

在这里我们可以采用双重 if 来解决这种线程安全问题。

如代码:

class SingletonLazy {private static SingletonLazy instance = null;public static Object locker = new Object();public SingletonLazy getinstance(){if(instance == null){synchronized (locker){if(instance == null){instance = new SingletonLazy();}}}return instance;}}

如代码,我们在锁里面再加个 if 就可以避免 两个new了,使线程安全。

http://www.yayakq.cn/news/863561/

相关文章:

  • 网站建设前的ER图青岛外贸建设网站
  • 手机网站如何做营销wordpress payjs
  • 深圳建网站哪个公网站多语言切换
  • 西安网站建设方案托管做瞹免费视频网站
  • 网站开发需求文档模板带er图代制作网站
  • 网站如何加入流量统计钢铁网站建设初衷
  • 汕头企业网站建设设计响应式网站软件
  • 一个网站做几个关键词vs做网站添加背景
  • 厦门网站seo网站赞赏
  • 注册网站手机号收验证码杭州网页设计培训课程
  • 创建网站收费网站备案每年一次吗
  • 网站建设公司如何推广wordpress文章列表插件
  • 360关键词竞价网站高端网站设计v芯hyhyk1推好
  • word如何做网站孝感专业做网站公司
  • 网站建设用什么服务器免费建站网站哪个好
  • c2c网站代表有哪些重庆市娱乐场所暂停营业
  • 组建网站需多少钱网站开发的可行性报告
  • 网站备案需要去哪里百度网盘首页
  • 天津市建设工程定额管理站网站页面设计包括什么
  • 傻瓜式免费自助建站系统南充北京网站建设
  • asp网站建设类论文微信表情开放平台登录入口
  • 必应网站收录在哪什邡市建设局门户网站
  • 清远市建设工程交易中心网站招商门户网站建设方案
  • 云南云南住房和城乡建设厅网站apm搭建 wordpress
  • 西安专业网站建设公司网站优化与推广
  • 网站快照没了自己注册网站
  • 上海建设银行网站查询余额青岛建网站人
  • 解析域名就可以做网站如何做京东商城一样的网站
  • 网站建设前规划如何添加网站代码
  • 南乐网站建设vfp wordpress