委托应用:
public delegate void Method1Deleage();//定义委托
class Program
{
static void Main(string[] args)
{
//int n = 10;
//Person p1 = new Person();
//委托也是一种数据类型,使用的时候需要new一个对象,关
键字是Delegate
//我希望调用M1或者是M2
Method1Deleage myDelegate = M2;
//Method1Deleage myDelegate = new Method1Deleage(M2);
myDelegate();
// Leader(M2);
Console.ReadKey();
}
//决定用哪个方法
static void Leader(Method1Deleage lastMethod)//委托是一
种方法的类型
{
lastMethod();
}
//定义方法
static void M1()
{
Console.WriteLine("这是M1方法");
}
static void M2()
{
Console.WriteLine("这是M2方法");
}
}
class Person
{
public string Name
{
get;
set;
}
}
定义委托:
1.项目中添加类,在进行定义
class MethodDelegate
{
Delegate void MethodDelegate();
}
2.在主程序中直接写
public delegate void Method1Deleage();
调用委托:
1.直接赋值,系统将自动转换成new的形式
Method1Deleage myDelegate = M2;
myDelegate();
2.
Method1Deleage myDelegate = new Method1Deleage(M2);
myDelegate();
类库:
建立:解决方案下----添加——类库
Console.WriteLine("当前时间为:{0}",System.DateTime.Now.ToSting
("yyyy-MM_dd hh:mm:ss"));
File.WriteAllText(@"time.txt",System.DateTime.Now.ToSting("yyyy-
MM_dd hh:mm:ss"));
--------------
添加控制台:
main
{
Class1 c1 = new Class1();//添加引用快捷键shift+ctrl+F10;using
ClaLib
c1.WriteTime = M2;
c1.DoSth();
Console.ReadKey();
}
在一个解决方案下可以建立多个项目,这些项目是相互独立的,但是有些
时候希望一个项目能够引用其他项目的类和方法。-------直接引用是办不
到的。
可以把项目中的一些类放在类库中,该解决方案下的所有项目都可以引用
。
一个类库就好像是一个程序集,但是这个集合没有主函数(入口函数),
因此类库中的类是不能执行的,不是exe文件。而是dll文件。
添加引用(first step)dll 程序集
导入命名空间using shift+alt+F10
在另一个项目中创建类------放在类库-------在本项目中引用了类
库-----还是不能使用另一个项目中的类(类的访问修饰符,一定改成
public)