从前些天开始看设计模式的书开始就想写学习笔记。但是最近鲜有机会上网,而且要备战软考,就一直没写。
关于Singleton的翻译问题好多书都不一致,有的叫单态,有的叫单身,单件(个人认为这个比较贴切)。我觉得专业名词还是不要翻译为好,免得给人造成困扰。
个人觉得Singleton算是最简单,最好理解的设计模式了。它表示某个类只能有一个对象。
在程序中,比如一些配置文件,应该只有一个对象的。这时,我们就可以用Singleton模式。
Java代码
























本例中如果写C#的代码,与Java完全相同。C++代码也差不多。
由静态方法构成的实用类经常会被用到,对初学者比较重要的,是澄清Singleton和实用类的区别:
实用类不保存状态,仅提供功能
实用类是方法的集合(非OO),Singleton是对象。
实用类不具有多态性。