-
构造方法()隐式;
构造方法():base()显式。
查看全部 -
重写虚方法方法属性必不能是private,static或者非虚方法不能被重写,
方法,属性,索引器,事件都能被重写。
查看全部 -
覆盖父类的方法
new 父类方法声明。。。
查看全部 -
是观察者设计模式的实现
查看全部 -
委托与继承相似,都是复用代码,继承是类级别的复用,委托是方法级别的复用。
委托声明方式
delegate 返回值类型 方法名();
可以保存一些列方法;
调用方式从声明中的变量获得,例如del();
查看全部 -
delegate
查看全部 -
队列,排队啊,先进先出
查看全部 -
dictionary ==》java.Map
查看全部 -
结构与类的区别
查看全部 -
结构:一次性的类,不需要经过垃圾回收,生命周期短,是值类型,可以进行值传递来保持生命周期
查看全部 -
例如某个人发生基因突变,我们不不建议他在继续繁衍后代,因此只可继承一次的成员那就用sealed密闭关键词修饰,意指到此为止,不要再传播了。
查看全部 -
多态实现
父类成员用virtual修饰,子类实现用override重写
查看全部 -
发布者:通知某件事情发生的
订阅者:对某件事情关注的
触发:事件发生时,会通知所有关注该事件的订阅者
注册:想在事件发生时被通知,必须注册以表示关注
事情发生时,通知订阅者,就是调用订阅者的注册函数。注册,就是高数发布者调用哪一个注册函数。
事件声明:
delegate void Handler();
public event Handler NewDog; //Handler 委托类型 NewDog 事件名
//NewDog是一个成员,并且会被隐式自动初始化为null
事件订阅:
NewDog += 方法 //订阅
NewDog -= 方法 //取消订阅
//方法可以是,实例方法,静态方法,匿名方法、Lambda表达式
事件触发:
if(NewDog!=null)
{
NewDog();
}
事件可以理解成是一种封装的受限制的委托,事件是对进行的一种委托的封装,委托中保存着实际订阅者注册的函数,事件触发是调用的是委托当中持有的函数
查看全部 -
匿名方法
delegate void ActCute();
ActCute del;
del = delegate(参数列表){方法体};
Lambda表达式
del=(参数列表)=>{方法体};
查看全部 -
委托:持有一个或者多个方法的对象,并且该对象可以执行,可以传递。
声明委托类型 delegate void ActCute();//委托类型是一种引用类型
定义委托类型的对象 ActCute actCute;
给委托对象赋值
class Dog
{
public void WagTail(){...}
}
actCute = dog.WagTail;
使用委托类型 actCute();//像调用函数一样使用委托类型
查看全部
举报