1。 事件:
类或对象可以通过事件向其他类或对象通知发生的相关事情。发送(或引发)事件的类称为“发行者”,接收(或处理)事件的类称为“订户”。事件本质上是一组方法。
事件的使用步骤:
delegate void DL();①
class TimeOpe
{
public event DL sj;②
int step;
事件的使用步骤:
delegate void DL();①
class TimeOpe
{
public event DL sj;②
int step;
public int Step
{
set { step = value; }
}
public void Begin()
{
while (step > 0)
{
Console.WriteLine("下课");
Console.WriteLine(DateTime.Now.ToString());
Thread.Sleep(2000);
step--;
}
sj();⑤
}
}
class myclass
{
static void Main()
{
TimeOpe to = new TimeOpe();
to.sj += show;④
to.Step = 1;
to.Begin();
}
static void show()③
{
Console.WriteLine("上课");
Console.WriteLine(DateTime.Now.ToString());
}
}
输出结果为:
下课
2010-7-26 16:38:18
上课
2010-7-26 16:38:20
①定义一个与方法相应的委托
②定义关于方法和委托的事件
③定义事件方法
④订阅方法
⑤响应该事件
2。密封类
关键字为:sealed,放于class前,密封类不能用在基类,密封类的主要作用为:防止派生
3。静态类
静态类在加载包含该类的程序或命名空间时由 .NET Framework 公共语言运行库 (CLR) 自动加载。
静态类的主要功能:
1.它们仅包含静态成员。
2.它们不能被实例化。
3.它们是密封的。
4.它们不能包含实例构造函数。
静态类中的构造函数不能有访问修饰符和参数,静态类不能被继承也不能继承其他自定义的类。静态方法可以被重载但不能被重写
4。抽象类
关键字为:abstract。抽象类不能被实例化。抽象类中的实例化函数不可以被调用,只有通过子类来调用。静态函数可通过类名.方法名来调用。抽象类中不能有抽象构造函数也不能有抽象字段。抽象类的访问修饰符不能为private
5。接口
接口的关键字为:interface,接口中只能有public访问修饰符而且public不能手动再次输出。接口也不能被实例化。
{
set { step = value; }
}
public void Begin()
{
while (step > 0)
{
Console.WriteLine("下课");
Console.WriteLine(DateTime.Now.ToString());
Thread.Sleep(2000);
step--;
}
sj();⑤
}
}
class myclass
{
static void Main()
{
TimeOpe to = new TimeOpe();
to.sj += show;④
to.Step = 1;
to.Begin();
}
static void show()③
{
Console.WriteLine("上课");
Console.WriteLine(DateTime.Now.ToString());
}
}
输出结果为:
下课
2010-7-26 16:38:18
上课
2010-7-26 16:38:20
①定义一个与方法相应的委托
②定义关于方法和委托的事件
③定义事件方法
④订阅方法
⑤响应该事件
2。密封类
关键字为:sealed,放于class前,密封类不能用在基类,密封类的主要作用为:防止派生
3。静态类
静态类在加载包含该类的程序或命名空间时由 .NET Framework 公共语言运行库 (CLR) 自动加载。
静态类的主要功能:
1.它们仅包含静态成员。
2.它们不能被实例化。
3.它们是密封的。
4.它们不能包含实例构造函数。
静态类中的构造函数不能有访问修饰符和参数,静态类不能被继承也不能继承其他自定义的类。静态方法可以被重载但不能被重写
4。抽象类
关键字为:abstract。抽象类不能被实例化。抽象类中的实例化函数不可以被调用,只有通过子类来调用。静态函数可通过类名.方法名来调用。抽象类中不能有抽象构造函数也不能有抽象字段。抽象类的访问修饰符不能为private
5。接口
接口的关键字为:interface,接口中只能有public访问修饰符而且public不能手动再次输出。接口也不能被实例化。
6、委托:
委托是一种引用方法的类型,一旦为委托分配了方法委托将与改该方法具有完全相同的行为。
委托的特点:
1。委托类似于 C++ 函数指针,但它们是类型安全的。
2。委托允许将方法作为参数进行传递。
3。委托可用于定义回调方法。
4。委托可以链接在一起;例如,可以对一个事件调用多个方法。
5。方法不必与委托签名完全匹配。
委托的使用:
1。委托的定义:delegate void Dele(int i);
2。定义方法:
public void Method(int i)
{
Console.WriteLine("参数为:{0}",i);
}
3。关联委托和方法:
Program pro = new Program();
Dele del = new Dele(pro.Method);
del(100);
委托的特点:
1。委托类似于 C++ 函数指针,但它们是类型安全的。
2。委托允许将方法作为参数进行传递。
3。委托可用于定义回调方法。
4。委托可以链接在一起;例如,可以对一个事件调用多个方法。
5。方法不必与委托签名完全匹配。
委托的使用:
1。委托的定义:delegate void Dele(int i);
2。定义方法:
public void Method(int i)
{
Console.WriteLine("参数为:{0}",i);
}
3。关联委托和方法:
Program pro = new Program();
Dele del = new Dele(pro.Method);
del(100);
转载于:https://blog.51cto.com/lixinya/360583