单例模式应用实例,实现单例模式的类

  单例模式应用实例,实现单例模式的类

  00-1010 1.单一案例2。单案例设计模式1的应用实例。第二步。单身模式-饥饿的中国式3。单例模式——懒惰的中国式

  00-1010 1.所谓类的单体设计模式,就是采取一定的措施,保证整个软件系统中一个类只有一个对象实例,并且该类只提供一个方法来获取其对象实例。

  2.有两种方法来设计单个外壳:

  1)饿中国风。

  2)懒惰

  

目录

 

  00-1010 1)构造器私有化=《防止用户直接创建对象》

  2)在类内部创建对象。

  3)向外部公开一个静态公共方法。

  4)代码实现

  

1.单例

包com . demo . single _;class test 01 { public static void main(string[]args){//girl friend g01=新女友(小红);//女朋友g01=新女朋友(夏花);女朋友t01=女朋友. getinstance();system . out . println(t01);女朋友t02=女朋友. getinstance();system . out . println(t02);if(t01==t02)system . out . println( true );} }//有个类,女朋友//只能有一个女朋友类女朋友{ private stringname//1.将构造函数{ this.name=name的私有女朋友(字符串名)私有化;}//2.直接在类内部创建私有静态女朋友g=女朋友(小红);//提供一个公共静态方法返回对象gpublic静态女朋友getinstance(){ return g;} @ Override public String to String(){ return 女朋友{ name= name }}}测试结果

 

  注意:单例设计模式中的对象通常是重量级对象。饿——中国风可能会造成对象的创建,但是没有使用。

  

2.单例设计模式的应用实例

包com . demo . single _;//演示懒惰单例模式公共类test 02 { public static void main(string[]args){//newcat(菲达);错误。system . out . println(cat . n);cat instance=cat . getinstance();system . out . println(instence);//再执行一次,还是大黄,cat.getInstance()中的if语句将不再执行cat instance 2=cat . getinstance();system . out . println(instance 2);} }//希望程序运行过程中只能创建一个cat对象。//使用单例模式类cat{私有字符串名称;//1,私有化构造函数private cat(string name){ system . out . println(被调用的构造函数);this.name=name} //2、定义一个静态属性对象private static cat c1public static int n=999//3、提供一个公共静态方法,可以返回一个cat对象公共静态cat getinstance(){ if(C1==null){ C1=newcat(大黄);}返回C1;} @ Override public String to String(){ return cat { name= name } ;}}//4、摘要:只有当用户使用getInstence()时,才会返回cat c1对象。//稍后再次调用时,会返回最后创建的对象测试结果。

 

  3.饿中式和懒中式的区别。

  单一案例设计模式。饿VS懒1。两者的主要区别在于创建对象的时间不同:Hungry在加载类时创建一个对象实例,而lazy在使用时创建一个对象实例。

  2.饿中式不存在线程安全问题,懒中式存在线程安全问题。

  3.饥饿的中国式可能会浪费资源。如果程序员不使用任何对象实例,饿汉式创建的对象会被浪费,懒汉式只有在使用的时候才会被创建,所以不存在这个问题。

  4.在我们的javaSE标准类中,java.lang.Runtime是经典的单例模式。

  关于Java对singleton模式应用的深入探索,本文到此结束。有关Java singleton模式的更多信息,请搜索以前关于流行IT的文章或继续浏览下面的相关文章。我希望你将来能支持流行它!

郑重声明:本文由网友发布,不代表盛行IT的观点,版权归原作者所有,仅为传播更多信息之目的,如有侵权请联系,我们将第一时间修改或删除,多谢。

留言与评论(共有 条评论)
   
验证码: