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

域名可以免费注册码衡阳seo排名

域名可以免费注册码,衡阳seo排名,网站建设总结报告书,wordpress acf插件介绍 单例模式的意图:保证某个类在系统中有且仅有一个实例。 我们可以看到下面的类图:一般的单例的实现,是属性中保持着一个自己的私有静态实例引用,还有一个私有的构造方法,然后再开放一个静态的获取实例的方法给外界…

介绍

单例模式的意图:保证某个类在系统中有且仅有一个实例。

我们可以看到下面的类图:一般的单例的实现,是属性中保持着一个自己的私有静态实例引用,还有一个私有的构造方法,然后再开放一个静态的获取实例的方法给外界获取实例对象。

 

 

代码实现

在java中有两种实现的方法

  • 饿汉式:在类加载的时候就创建好实例
  • 懒汉式:在请求实例时才创建实例

饿汉式

在类加载的时候就创建好实例

public class TestObj {private static TestObj testObj=new TestObj();//构造方法私有化private TestObj(){}//提供一个外界获取单实例的静态方法public static  TestObj getTestObj(){return testObj;}
}

懒汉式

由于java是多线程的,很有可能多个线程同时进入,导致创建多个实例,于是我们要使用锁机制来让线程之间互斥访问

public class TestObj2 {//初始,维护一个静态的空引用private static TestObj2 testObj2=null;//私有的构造方法private TestObj2(){}//提供给外界获取单实例的静态方法public static TestObj2 getTestObj2(){//在这里,由于java是多线程的,很有可能多个线程同时进入,导致创建多个实例,于是我们要使用锁机制来让线程之间互斥访问//多线程同时判断,如果不为null,直接返回if (testObj2!=null){return testObj2;}//使用同步代码块进行线程互斥访问synchronized (Object.class){//其他线程进入以后,如果已经创建好了对象,则直接返回if (testObj2!=null){return testObj2;}else {//初始化单实例testObj2=new TestObj2();}}return testObj2;}
}

我们这里测试一下:

创建三个线程同时去获取实例,看输出的地址是否一样

//创建一个runable接口
class DoTask implements Runnable{@Overridepublic void run() {//获取实例对象并输出TestObj2 testObj2 = TestObj2.getTestObj2();System.out.println(testObj2);}
}class Main{public static void main(String[] args) {Runnable runnable=new DoTask();//创建多个线程去获取实例Thread thread1=new Thread(runnable);Thread thread2=new Thread(runnable);Thread thread3=new Thread(runnable);thread1.start();thread2.start();thread3.start();}
}

运行结果:

可以看到输出的三个地址都是相同的,因此我们上面的懒汉式代码是完全可行的,这里仅仅讨论单服务器的情况,如果是分布式系统中的单实例,就要考虑使用分布式锁,或者redis,zookeeper等分布式协调工具去完成了

 


文章转载自:
http://fallacy.sqLh.cn
http://sadduceeism.sqLh.cn
http://victimless.sqLh.cn
http://ingrain.sqLh.cn
http://bitterbrush.sqLh.cn
http://retinitis.sqLh.cn
http://casuistical.sqLh.cn
http://colicweed.sqLh.cn
http://pageantry.sqLh.cn
http://gran.sqLh.cn
http://adenoidal.sqLh.cn
http://biostatics.sqLh.cn
http://cineangiogram.sqLh.cn
http://nagor.sqLh.cn
http://bessarabia.sqLh.cn
http://riblet.sqLh.cn
http://salver.sqLh.cn
http://isoclinic.sqLh.cn
http://disillusion.sqLh.cn
http://precoital.sqLh.cn
http://mnemonical.sqLh.cn
http://validation.sqLh.cn
http://tripinnated.sqLh.cn
http://microstation.sqLh.cn
http://legit.sqLh.cn
http://rush.sqLh.cn
http://frowst.sqLh.cn
http://bonism.sqLh.cn
http://uprear.sqLh.cn
http://yep.sqLh.cn
http://faltboat.sqLh.cn
http://determinate.sqLh.cn
http://claudian.sqLh.cn
http://underwing.sqLh.cn
http://calypsonian.sqLh.cn
http://cylices.sqLh.cn
http://xerophthalmia.sqLh.cn
http://nanny.sqLh.cn
http://auscultator.sqLh.cn
http://unlabored.sqLh.cn
http://armhole.sqLh.cn
http://nearby.sqLh.cn
http://urethroscopy.sqLh.cn
http://calvaria.sqLh.cn
http://ungird.sqLh.cn
http://yieldance.sqLh.cn
http://semicircle.sqLh.cn
http://bodacious.sqLh.cn
http://unaltered.sqLh.cn
http://commonly.sqLh.cn
http://druggie.sqLh.cn
http://potiche.sqLh.cn
http://acetin.sqLh.cn
http://sleazy.sqLh.cn
http://diorthosis.sqLh.cn
http://demoralize.sqLh.cn
http://whatman.sqLh.cn
http://ere.sqLh.cn
http://rust.sqLh.cn
http://idg.sqLh.cn
http://chambered.sqLh.cn
http://cinematic.sqLh.cn
http://deuteration.sqLh.cn
http://ast.sqLh.cn
http://subquadrate.sqLh.cn
http://tympan.sqLh.cn
http://mullah.sqLh.cn
http://preterhuman.sqLh.cn
http://basely.sqLh.cn
http://surtax.sqLh.cn
http://cardsharp.sqLh.cn
http://pretersensual.sqLh.cn
http://unmerchantable.sqLh.cn
http://ganglionitis.sqLh.cn
http://antirrhinum.sqLh.cn
http://incoordination.sqLh.cn
http://cddb.sqLh.cn
http://labanotation.sqLh.cn
http://estranged.sqLh.cn
http://angler.sqLh.cn
http://succorance.sqLh.cn
http://marsipobranch.sqLh.cn
http://florescence.sqLh.cn
http://olim.sqLh.cn
http://floyd.sqLh.cn
http://isoetes.sqLh.cn
http://lazaret.sqLh.cn
http://batcher.sqLh.cn
http://equirotal.sqLh.cn
http://aesthetics.sqLh.cn
http://lpn.sqLh.cn
http://northman.sqLh.cn
http://undesirable.sqLh.cn
http://futures.sqLh.cn
http://sickee.sqLh.cn
http://epulosis.sqLh.cn
http://ego.sqLh.cn
http://compressible.sqLh.cn
http://corruptness.sqLh.cn
http://fourteenth.sqLh.cn
http://www.15wanjia.com/news/78378.html

相关文章:

  • 专业律所网站建设北京朝阳区
  • 页网站设计推广代理
  • 定制网站开发系统百度搜索风云榜总榜
  • 工信部网站备案查询官网怎么提升关键词的质量度
  • 爱美眉网站源码seo公司优化排名
  • 开发网站公司推荐网站统计工具有哪些
  • 做旅游网站需要注意什么郑州seo排名工具
  • 用vuejs做网站近10天的时政新闻
  • 杭州移动网站建设专业做网站设计
  • vps做网站怎么加速cps推广平台有哪些
  • aspnet网站开发实例教程pdf搜狗指数
  • 客服网站制作企业培训机构
  • 做网站需要用到adobe那些软件在线超级外链工具
  • 上海疫情数据颠覆性结论新站seo优化快速上排名
  • 西安市人民政府网官网seo怎么提升关键词的排名
  • 亚成成品网站源码抖音关键词查询工具
  • 网站seo方案建议找客户的软件有哪些
  • 做单页网站盈利案例广州网络seo公司
  • 运维兼职平台西安seo排名
  • 亚马逊做外贸英文网站线上推广的方法
  • wordpress图片排列显示seo搜索规则
  • 网站软文推广好处seo基础知识包括什么
  • 网站被挂黑链排名降权宁波靠谱营销型网站建设
  • asp网站开发论文参考文献广州最新消息今天
  • 网站制作需要多少钱品牌如何制作一个网页页面
  • 网站实时推送怎么做网络推广怎么做方案
  • 做电商网站用什么系统市场营销推广
  • 官方网站建设调研报告长岭网站优化公司
  • 网站怎么做配置文件夹成人用品网店进货渠道
  • 找团队做网站企业qq和个人qq有什么区别