抽象成员 抽象类(abstract)、密封类(sealed)

抽象成员(类似C++中的纯虚函数)

抽象成员是指设计为被覆写的函数成员,抽象成员只能在抽象类中声明,它有以下特征:
(1)必须是一个函数成员,也就是说,字段和常量不能为抽象成员
(2)必须用abstract修饰符标记
(3)不能有实现代码块,抽象成员的代码用分号表示
(4)尽管抽象成员必须在派生类中用相应的成员覆写,但不能把virtual修饰符加到abstract修饰符
(5)类似虚成员,派生类中抽象成员的实现必须指定override修饰符

抽象成员与虚成员对比

抽象类

抽象类就是指设计为被继承的类,抽象类只能被用做其他类的基类,它有以下特征:
(1)不能创建抽象类的实例
(2)抽象类使用abstract修饰符声明
(3)抽象类可以包含抽象成员或普通的非抽象成员,抽象类的成员可以是抽象成员和普通带有实现的成员的任意组合
(4)抽象类自己可以继承另一个抽象类

    abstract class A{}
    abstract class B : A{}

(5)任何派生自抽象类的类,必须使用override关键字实现该类所有的抽象成员,除非派生类自己也是抽象类

密封类

抽象类必须用做基类,且不能像独立的类那样被实例化,密封类与它相反,密封类只能被用做独立的类,它不能被用作基类,也就是它不能被继承,密封类使用sealed修饰符标注

    sealed class A{}
    //class B : A { } 继承自A则会出错

 

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值