singletonJava单例模式怎么用?

singleton  时间:2021-06-04  阅读:()

编程题:写一个Singleton出来。

Singleton模式主要作用是保证在Java应用程序中,一个类Class只有一个实例存在。

一般Singleton模式通常有几种种形式: 第一种形式:定义一个类,它的构造函数为private的,它有一个static的private的该类变量,在类初始化时实例话,通过一个public的getInstance方法获取对它的引用,继而调用其中的方法。

lassSingleton{ privateSingleton(){} //注意这是private只供内部调用 privatestaticSingletoninstance=newSingleton(); //这里提供了一个供外部访问本class的静态方法,可以直接访问 publicstaticSingletongetInstance(){ returninstance; } } 第二种形式: lassSingleton{ privatestaticSingletoninstance=null; publicstaticsynchronizedSingletongetInstance(){ //这个方法比上面有所改进,不用每次都进行生成对象,只是第一次 //使用时生成实例,提高了效率! if(instance==null) instance=newSingleton(); returninstance;} } 其他形式: 定义一个类,它的构造函数为private的,所有方法为static的。

一般认为第一种形式要更加安全些 Hashtable和HashMap Hashtable继承自Dictionary类,而HashMap是Java1.2引进的Mapinterface的一个实现。

HashMap允许将null作为一个entry的key或者value,而Hashtable不允许 还有就是,HashMap把Hashtable的contains方法去掉了,改成containsvalue和containsKey。

因为contains方法容易让人引起误解。

最大的不同是,Hashtable的方法是Synchronize的,而HashMap不是,在多个线程访问Hashtable时,不需要自己为它的方法实现同步,而HashMap 就必须为之提供外同步。

Hashtable和HashMap采用的hash/rehash算法都大概一样,所以性能不会有很大的差异。

关于JAVA中的singleton模式

package test; public class Singleton { private Singleton s; private Singleton() { } public static Singleton getSigleton() { if(s==null)s=new Singleton(); return s; } } 这就是一个单例模式,我想应该不用注释了,原理就是这个类的构造方法private了,所有在外边不能调用,也就不能new Singleton();得到实例,那么 想得到实例就得调用它的静态方法getSigleton();即Singleton.getSigleton();就会返回一个Singleton的实例,注意此方法中的语句,即如果你是第一次调用这个方法那么它会给你new一个实例,以后再调用得到的都是这个实例,也就是说从始至终就只有一个Singleton的实例,这就是单例模式。

Java单例模式怎么用?

public class Singleton { private static Singleton sin=new Singleton(); private Singleton(){ } public static Singleton getInstance(){ return sin; } } 比如说Class、Runtime类都是单列设计模式。



企鹅小屋:垃圾服务商有跑路风险,站长注意转移备份数据!

企鹅小屋:垃圾服务商有跑路风险!企鹅不允许你二次工单的,二次提交工单直接关服务器,再严重就封号,意思是你提交工单要小心,别因为提交工单被干了账号!前段时间,就有站长说企鹅小屋要跑路了,站长不太相信,本站平台已经为企鹅小屋推荐了几千元的业绩,CPS返利达182.67CNY。然后,站长通过企鹅小屋后台申请提现,提现申请至今已经有20几天,企鹅小屋也没有转账。然后,搞笑的一幕出现了:平台账号登录不上提示...

无忧云:洛阳BGP云服务器低至38.4元/月起;雅安高防云服务器/高防物理机优惠

无忧云怎么样?无忧云,无忧云是一家成立于2017年的老牌商家旗下的服务器销售品牌,现由深圳市云上无忧网络科技有限公司运营,是正规持证IDC/ISP/IRCS商家,主要销售国内、中国香港、国外服务器产品,线路有腾讯云国外线路、自营香港CN2线路等,都是中国大陆直连线路,非常适合免备案建站业务需求和各种负载较高的项目,同时国内服务器也有多个BGP以及高防节点。一、无忧云官网点击此处进入无忧云官方网站二...

提速啦(24元/月)河南BGP云服务器活动 买一年送一年4核 4G 5M

提速啦的来历提速啦是 网站 本着“良心 便宜 稳定”的初衷 为小白用户避免被坑 由赣州王成璟网络科技有限公司旗下赣州提速啦网络科技有限公司运营 投资1000万人民币 在美国Cera 香港CTG 香港Cera 国内 杭州 宿迁 浙江 赣州 南昌 大连 辽宁 扬州 等地区建立数据中心 正规持有IDC ISP CDN 云牌照 公司。公司购买产品支持3天内退款 超过3天步退款政策。提速啦的市场定位提速啦主...

singleton为你推荐
黑客网站最好的黑客网站是哪个jmh6.13 泗洪事件是怎么个情况、?林俊杰怎么了?qq业务查询怎么查询别人为我开通的QQ业务?匹配函数计算机中的vlookup函数怎么使用cpu监控CPU检测软件有哪些 5款CPU检测工具介绍 (自定义表情qq自定义表情自定义表情手机QQ自定义表情怎么添加币众筹众筹是什么意思审计平台什么叫数据库审计系统?微粒群算法粒子群算法优化下面的公式 要怎么做 能给个程序最好
北京域名空间 合租服务器 linuxvps 阿里云邮箱登陆首页 edis 新世界电讯 天猫双十一抢红包 ibrs 亚洲小于500m 帽子云 softbank邮箱 phpmyadmin配置 河南移动网 ftp免费空间 网游服务器 联通网站 移动服务器托管 网购分享 日本代理ip 注册阿里云邮箱 更多