1.单例模式:
重点就是下面三句话
/*1.将构造函数私有化
*2.提供一个静态方法,返回一个对象
*3.创建一个单例
1构造函数私有化
private Form2()
{
InitializeComponent();
}
2.提供一个静态方法,返回一个对象
3.创建一个单例
public static Form2 f2=null;
public static Form SingleMode()//静态方法
{
if (f2 == null)
{
f2 = new Form2();
}
return f2;
}
然后在窗体中进行调用
private void button1_Click(object sender, EventArgs e)
{
//如何点击主窗体的时候只能显示一个FORM2
Form f2 = Form2.SingleMode();
f2.Show();
}
防止有问题,必须在关闭时要对子窗体初始化
private void Form2_FormClosing(object sender, FormClosingEventArgs e)
{
f2 = null;
}
2.简单工厂模式
核心代码如下
public Father factory()
{
Father f = null;
string str1 = Path.GetExtension(FileName);
switch (str1)
{
case ".txt": f = new OpenTxt();break;
case ".avi": f = new OpenAvi(); break;
case ".xls": f = new OpenXls(); break;
default : f = new Father(); break;
}
return f;
}