*设计模式之单例模式
是在大量的实践中总结和理论之后优选的代码结构、编程风格、以及解决问题的思考方式。
个人理解: 就好比“套路”。追女生都有哪些套路,追什么类型的女生就用哪种套路。用反了就不好使。而这里的“套路”就是人家追女孩子多了的人总结下来的干货(方法)。拿着它去用就完事了。
单例模式:就是采取一定的方法保证在整个的软件系统中,对某个类只能存在一个对象实列。
**
制作过程
饿汉式:::可以理解为一上来就准备好了对象,就等着你用就好了.
:我们首先必须将类的构造器的访问权限设置为private,这样,就不能用new 操作符在类的外部产生类的对象了,但在类的内部仍可以产生该类的对象。因为在类的外部开始还无法得到类的对象,只能调用该类的某个静态方法以返回类内部创建的对象,静态方法只能访问类中的静态成员变量,所以,指向类内部产生的该类对象的变量也必须定义为静态的。(这样我们从之前的new 一个对象到利用***static*** 关键字去掉了之前的new方法从而使用 "类.方法" 创建一个对象。)
代码实现:
懒汉式:::
两种单列模式的区别**:**
懒汉式: 延迟创建对象,目前的写法坏处:线程不太安全。
饿汉式 : 对象加载时间过长,线程安全。
单列模式 优点:由于单列模式只生成一个实例,减少了系统性能的开销。
单列模式的应用场景:
网站计数器
应用程序的日志应用
数据连接池
项目中读取配置文件的类
Application也是单列的应用
Window 的Task Manager(任务管理器)
window 的 Recycle Bin(回收站),回收站一直维护的只有一个对象实例。