网站首页 > 技术教程 正文
设计模式是在大量的实践中总结和理论化之后优选的代码结构、编程风格、 以及解决问题的思考方式。
所谓类的单例设计模式,就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实例,并且该类只能提供一个取得其对象实例的方法。
单例设计模式——饿汉式
步骤:
1.私有化类的构造器
2.静态实例化当前类
3.提供一个公共的静态方法,返回当前类的对象
class Bank {
//1.对构造器私有化
private Bank() {
}
//2.内部创建类的对象
//要求此对象也必须为静态的对象
private static Bank bank = new Bank();
//3.提供公共的静态方法,返回类的对象
public static Bank getInstance() {
return bank;
}
}总结
如果我们要让类在一个虚拟机中只能产生一个对象,我们首先必须将类的构造器的访问权限设置为private,这样,就不能用new操作符在类的外部产生类的对象,但在类内部仍可以产生该类的对象。因为在类的外部开始还无法得到类的对象,只能调用该类的某个静态方法以返回类内部创建的对象,静态方法只能访问类中的静态成员变量,所以,指向类内部产生的该类对象的变量也必须定义成静态的。
单例模式的优点
由于单例模式只生成一个实例,减少了系统性能开销,当一个对象的产生需要比较多的资源时,如读取配置、产生其他依赖对象时,则可以通过在应用启动时直接产生一个单例对象,然后永久驻留内存的方式来解决。
单例设计模式运用场景
网站的计数器、应用程序的日志应用、数据库连接池、Windows的Task Manager (任务管理器)、Windows的Recycle Bin (回收站)等
猜你喜欢
- 2024-11-01 蛋白质翻译的终止阶段(蛋白质翻译的起始、延伸和终止的主要过程)
- 2024-11-01 深挖由tcp_tw_recycle引发的业务超时问题(续)
- 2024-11-01 深挖由tcp_tw_recycle引发的业务超时问题
- 2024-11-01 AWS助理架构师认证培训实操练习 | EBS Snapshots - Hands On
- 2024-11-01 如何恢复已删除的 ACTIVE DIRECTORY 用户?
- 2024-11-01 大企业数据库服务首选!AliSQL这几大企业级功能你不可不知
- 2024-11-01 Oracle备份恢复之Flashback--闪回丢弃
- 2024-11-01 但联想bin pin sin tin tinker stinker stink
- 2024-11-01 如何彻底删除文件夹及其内容的详细步骤
- 2024-11-01 如何恢复误删的照片:详细步骤与技巧分享
欢迎 你 发表评论:
- 10-23Excel计算工龄和年份之差_excel算工龄的公式year
- 10-23Excel YEARFRAC函数:时间的"年份比例尺"详解
- 10-23最常用的10个Excel函数,中文解读,动图演示,易学易用
- 10-23EXCEL中如何计算截止到今日(两个时间中)的时间
- 10-2390%人不知道的Excel神技:DATEDIF 精准计算年龄,告别手动算错!
- 10-23计算工龄及工龄工资(90%的人搞错了):DATE、DATEDIF组合应用
- 10-23Excel中如何计算工作日天数?用这两个函数轻松计算,附新年日历
- 10-23怎样快速提取单元格中的出生日期?用「Ctrl+E」批量搞定
- 最近发表
-
- Excel计算工龄和年份之差_excel算工龄的公式year
- Excel YEARFRAC函数:时间的"年份比例尺"详解
- 最常用的10个Excel函数,中文解读,动图演示,易学易用
- EXCEL中如何计算截止到今日(两个时间中)的时间
- 90%人不知道的Excel神技:DATEDIF 精准计算年龄,告别手动算错!
- 计算工龄及工龄工资(90%的人搞错了):DATE、DATEDIF组合应用
- Excel中如何计算工作日天数?用这两个函数轻松计算,附新年日历
- 怎样快速提取单元格中的出生日期?用「Ctrl+E」批量搞定
- Excel日期函数之DATEDIF函数_excel函数datedif在哪里
- Excel函数-DATEDIF求司龄_exceldatedif函数计算年龄
- 标签列表
-
- 下划线是什么 (87)
- 精美网站 (58)
- qq登录界面 (90)
- nginx 命令 (82)
- nginx .http (73)
- nginx lua (70)
- nginx 重定向 (68)
- Nginx超时 (65)
- nginx 监控 (57)
- odbc (59)
- rar密码破解工具 (62)
- annotation (71)
- 红黑树 (57)
- 智力题 (62)
- php空间申请 (61)
- 按键精灵 注册码 (69)
- 软件测试报告 (59)
- ntcreatefile (64)
- 闪动文字 (56)
- guid (66)
- abap (63)
- mpeg 2 (65)
- column (63)
- dreamweaver教程 (57)
- excel行列转换 (56)

本文暂时没有评论,来添加一个吧(●'◡'●)