您的位置:首页 > 编程语言 > Java开发

见证技术蜕变历程,第一遍博文开始啦。java设计模式之单利设计模式

2016-09-25 21:25 375 查看
其实很早以前就有了要自己写博客来记录自己学习知识的点点滴滴的想法,看到很多大牛都有写博客的习惯,所以也来效仿。不仅能够在闲暇时翻一番自己的成果,还能总结最近所学习的知识点,大有裨益。
今天刚看完单利,然后就有了要开始写博文的想法,也是来见证自己点点滴滴的学习历程吧。打开博客才发现,原来今天是我博客创建一周年,刚好是今天,也是巧的不行。
言归正传,刚看完单利来说一下我对单利的理解吧。所谓的单利,就是一个类只允许创造出一个对象,而且不管是自己或者是其他类在引用这个类对象的时候只能引用这一个对象,当然单利的对象实例是必须要能够给其他类使用的。为什么要设计单利呢,我觉得其中一个原因是在某些情况下避免创建多个对象来造成内存的浪费吧。这只是我刚开始最浅显的理解。其实在计算机中线程池,日志对象,对话框,显卡的驱动程序都被设计成单利,这些应用都或多或少有一些资源管理的功能。每台计算机可以有若干通信端口,系统应当集中管理这些通信端口,以避免一个通信端口同时被两个请求同时调用。总之,选择单例模式就是为了避免不一致状态,避免政出多头。

这里我主要讲两种单利设计模式;饿汉式和懒汉式;

饿汉式:



懒汉式





以上是两种不同形式的单利,由图可见,饿汉式创建的实例已经固定,不可更改。而懒汉式每次都是创建一个新的实例,这是这两种单利的最本质区别,但是在使用懒汉式的时候要注意多线程的安全问题,所以在多线程的场景下要记得加锁;
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: