请用代码简单描述一下Singleton、抽象工厂、Bridge、Composite(任选三个)的设计模式的概念。
Singleton:
public class a
{
private static a instance;
private static a()
{
instance == ……
}
Public static a Instance()
{
Return instance;
}
}
通过调用类a. Instance()即获得该类的唯一应用程序级别的共享实例也即Singleton。
Abstract factory
Public class b
{
}
Public class c
{
}
Public class b1:b
{
}
……….
Public abstract class factory
{
Public abstract b create();
Public abstract c create(string name);
}
Public class subfactory1:factory
{
Public b create()
{
Return new b1;
}
Public c create()
{
Return new c1;
}
}
Public class subfactory2:factory
{
Public b create()
{
Return new b2;
}
Public c create()
{
Return new c2;
}
}
通过抽象类定制生产方法和返回产品的规格,由继承的子类来生产符合此子类工厂特色的产品,但是生产的产品一定符合抽象类工厂定制的规格。
Composite
Public class a
{
Public void play()
{
…..
}
}
Public class b
{
Public void sleep()
{
…..
}
}
Public class c
{
Private a a1= null;
Private b b1 = null;
Public c()
{
a1 = new a();
b1 = new b();
}
Public void Play()
{
a1. play();
}
Public void sleep ()
{
b1. sleep ();
}
}
实际上C包装了A和B类提供的方法,也就是集成了两者的功能。往往我们最终的界面是由各个部件组成起来的。