程序集:当写完程序后,生成的exe就是一个程序集,.dll文件也是一个程序集,但是不包括main函数,所以不能运行;但是exe文件可以运行。
添加一个程序集的话,就是添加---类库,只包含类,不能运行。一般我们使用.dll文件来封装常用的功能。
类库可以编译,不能运行。
程序集的引用;先在要添加的项目中添加程序集的引用,然后再加using+程序集的命名空间;
生成的exe文件的同一目录下也新增加了dll文件。
设定模式用来专门解决一些特定的问题。
设计模式:单例设计模式
在整个程序中,我们要保证对象必须是唯一的。
实现:
1、 构造函数私有化
2、声明一个静态字段,作为全局唯一的一个单例对象;
3、声明一个静态函数,返回全局唯一的对象。
namespace 单例模式
{
public partial class Form2 : Form
{
//全局唯一的一个单例
public static Form2 FormSingle = null;
private Form2()//将构造函数私有化。提供一个静态的方法返回一个对象
{
InitializeComponent();
}
//这里注意一点,静态方法中访问的成员只能是静态成员
public static Form2 GetSingle()//构造一个方法,返回一个对象
{
if (FormSingle==null)
{
FormSingle = new Form2();//这里调用同一个类中的私有构造函数
}
return FormSingle;
}
}
}
Form1:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
/// <summary>
/// 点击一下button1,就会出现Form2,创建单例模式,始终只出现一个form2
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void button1_Click(object sender, EventArgs e)
{
Form2 form2 = Form2.GetSingle();// new Form2();
form2.Show();
}
}