温习static,sealed,abstract,virtual

温习static,sealed,abstract,virtual对比:

 staticsealedabstractvirtual
修饰类可否y(c#2.0以后)yy-
修饰类可否
实例化
xyx-
修饰类可否
派生
有实例成员
xxy-
修饰类可否
有static成员
yyy-
修饰类可否
有virtual成员
xxy-
修饰类可否
有abstract成员
xxy-
修饰成员可否yxyy
用途不变和常用的工具类工具方法很具体清晰不需要再被继承细化的类,或需要上下文参数的工具类较抽象的基类,强制实现其抽象方法可以再被进一步扩展的虚方法,但非强制

 

 

1、虚方法与抽象方法:虚方法有方法体实现代码,抽象方法只有声明;

2、虚方法与普通方法:虚方法可以在子类中override,普通方法不行;

3、重写虚方法和抽象方法用override;覆盖重写普通方法只能用new,仍可以在用base.方法名调用其父类被覆盖的方法;

4、调用基类方法用base.xxx,调用自身方法用this.xxx;

5、私有构造函数可阻止类被实例化;(在单例模式中使用??)

6、静态构造函数,在第一个实例或引用任何第一个静态成员之前,将被自动调用;

7、可以同时存在一个普通无参构造函数和一个静态无参构造函数。

 

 

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值