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

上海设计公司网站小门户网站开发

上海设计公司网站,小门户网站开发,小程序多用户商城系统,如何查询网站使用什么框架做的目标: 1. 饿汉模式 2. 懒汉模式 3. 饿汉模式优化 目录 饿汉模式 懒汉模式 懒汉模式优化 饿汉模式 由名字我们就可以知道 "饿汉" 嘛,就比较急切,在类加载的时候就创建实例: 1. 写一个类,在本类中构造实…

目标:

1. 饿汉模式

2. 懒汉模式

3. 饿汉模式优化

目录

饿汉模式 

懒汉模式

懒汉模式优化


饿汉模式 

由名字我们就可以知道 "饿汉" 嘛,就比较急切,在类加载的时候就创建实例

1. 写一个类,在本类中构造实例,用static修饰,直接创建出来(提供一个现有的实例)

2. 在本类中写一个方法获取到上面的实例

3. 将这个类的构造方法设置为私有的,让外部不能 new 这个对象

//饿汉模式:直接 static 一个实例(线程安全)//期望这个类只能有一个实例
public class Demo1 {//只构造一个实例private static Demo1 instance = new Demo1();//获取这个实例public static Demo1 getInstance() {return instance;}//把构造方法设置为私有 外部不能 new 这个类对象private Demo1(){}
}

懒汉模式

由名字我们就可以知道 "懒汉" 嘛,就比较从容~,它是等到有人调用的时候再创建实例

1. 写一个类,在本类中构造实例,用static修饰,赋值为空(等待有人调用)

2. 在本类中写一个方法获取到上面的实例

3. 将这个类的构造方法设置为私有的,让外部不能 new 这个对象

//懒汉模式://期望这个类只能有一个实例
public class Demo2 {private static Demo2 instance = null;//获取这个实例public static Demo2 getInstance() {if (instance == null) {instance = new Demo2();}return instance;}//把构造方法设置为私有 外部不能 new 这个类对象private Demo2(){}}

懒汉模式优化

根据上面的 "懒汉模式" 和 "饿汉模式"。我们可以知道,懒汉模式,它只是负责读取,没有修改。而 " 饿汉模式 " 是既读取,也进行修改。所以来说, "懒汉模式" 是线程安全的, "饿汉模式" 是线程不安全的。

所以为了使 " 饿汉模式" 线程安全,我们做以下几步操作:

1. 进行加锁:怎么加呢???

我们应该给整个 if 语句进行加锁,防止两个线程同时调用的时候都为 null ,从而就实例化了两个。

//懒汉模式优化
public class Demo3 {private static volatile Demo3 instance = null;//获取这个实例public static Demo3 getInstance() {synchronized (Demo3.class) {if (instance == null) {instance = new Demo3();}}return instance;}//把构造方法设置为私有 外部不能 new 这个类对象private Demo3(){}}

2. 线程安全是解决了,但是呢?

我们会发现,后续我们每次调用 getInstance() 的时候,都必须进行加锁一次,我们也没必要每次都加锁(加锁其实也是很大的开销,可能会使好多线程阻塞等待,影响了效率),当不为 null 的时候,就不用加锁了,这样就迎刃而解了~~~

//懒汉模式优化
public class Demo3 {private static volatile Demo3 instance = null;//获取这个实例public static Demo3 getInstance() {if (instance == null) {synchronized (Demo3.class) {if (instance == null) {instance = new Demo3();}}}return instance;}//把构造方法设置为私有 外部不能 new 这个类对象private Demo3(){}}

http://www.15wanjia.com/news/176826.html

相关文章:

  • 网站icp备案 去哪编程网站开发
  • 网站建设选哪家好seo的公司排名
  • 杨颖做的车网站网页设计网站布局分析
  • 网站不用工具开发建设浙江建设银行官网站纪念币
  • 网站主栏目网站查询页面设计
  • 哈尔滨网站制作建设多少钱无锡网络公司平台
  • a网站建设青岛专业网络推广定制
  • 做视频网站用什么格式泉州百度竞价开户
  • 做网站网只做旧房翻新的装修公司
  • 河北京电电力建设有限公司网站温州建设企业网站
  • 衡水做网站优化深圳seo外包
  • 学校网站制作方案网站推广方式和手段
  • 个人备案能公司网站网络营销的定义和特点
  • 做商城网站要什么手续连城住房和城乡建设局门户网站
  • 建站之星备案google下载官网
  • 网站建设培训教程新手入门到精通怎样自己做企业网站
  • 四川网站建设开发网站简介 更改
  • 新干做网站设计师接单的十个网站
  • 国外知名设计网站英文网站模板cms
  • 注册网站域名用什么好处个人如何做免费网站
  • 江门网站推广哪里专业做简历网站有什么
  • 邯郸市教育考试院网站积分商城 wordpress
  • 如何通过psd做网站电商推广渠道
  • seo网站基础建设广州百度快速优化排名
  • 电子商务网站建设也管理网站建设实战视频教程
  • 西安网站搭建公司做蓝牙app的网站
  • 长沙房产集团网站建设seo是什么专业
  • 佛山外贸网站建设流程宣传片视频如何制作
  • 青岛谁优化网站做的好处网站建设多选题百度文库
  • 网站开发后端框架什么意思做网站要空间还是服务器