设计模式

1、单例模式,饿汉式与懒汉式的综合使用

 1     class Program
 2     {
 3         static void Main(string[] args)
 4         {
 5             Console.WriteLine("此时没有输出“构造函数”");
 6             Singleton s1 = Singleton.getInstance();
 7             Console.WriteLine("输出“构造函数”完成了");
 8         }
 9     }
10     public class Singleton
11     {
12         private Singleton()
13         {
14             Console.WriteLine("构造函数");
15         }
16 
17         private static class HolderClass
18         {
19             public readonly static Singleton instance = new Singleton();
20         }
21 
22         public static Singleton getInstance()
23         {
24             return HolderClass.instance;
25         }
26     }

/////////////////2016-03-15 21:00

2、简单工厂模式和工厂模式的区别

简单模式,只有一个工厂,根据特定的参数,返回相应的处理类(一般是处理类的接口,接口类或抽象类)

工厂模式,有多个工厂,继承自同一个工厂接口(类),一般定义一个xml文件用于配置反射出的工厂类的类型,通过反射动态生成工厂类,然后调用工厂类的基类接口方法,最终产出需要的类。

3、工厂模式和抽象工厂的模式的区别

工厂模式需要针对每个最终需要的产品,都生成一个相应的工厂类。所以整个项目会很大。

抽象工厂模式,是针对一个产品簇的,简单来说就是  抽象工厂类的子类,可以生成一个完整的产品(此模式更适用于最终需要的产品是一个复杂类的,就是里边还有其他类的)。

工厂模式使用示例:日志组件,基本上就一个大类就可以了

抽象工厂使用示例:皮肤组件,一个皮肤里边包含多个Control类,例如TextBox,Button等。抽象工厂的每个子类就需要实现把整个皮肤组件,包括里边的TextBox都生成出来的方法,即每一个具体的工厂,生产一个皮肤组件。

 

 

继续更新中。。。。。。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章