技术开发 频道

浅析设计模式之单件模式

三、模式之间的关系 

    在上一篇里我们讨论了抽象工厂模式,在实际应用中我们常常只允许一个系统中拥有一个工厂类。假如这个地区只有一个麦当劳餐厅,如果你的朋友询问你现在的位置,你回答说:“我在麦当劳。”那么你的朋友肯定知道你现在的方位能很快找到你。 

    如何向上面哪个抽象工厂的例子添加单件的实现呢?留给各位同学思考。

四、现实中的单件模式 

    单件模式一般用在什么地方呢? 

    一般我们的系统都有一个配置文件,需要一个配置类读取这个配置文件供系统使用,一个系统有且仅有一个这样类的实例,而且在系统的任何地方都可以访问到,也就是有一个全局的访问点。 

    一个软件只允许启动一个实例,多次点击只打开一个主窗体,如下:

private static MainForm _mainForm; private MainForm() { InitializeComponent(); } public static MainForm GetInstance() { if(_mainForm == null) _mainForm = new MainForm(); return _mainForm; }


    这样系统就只会启动一个主窗体了。

0
相关文章