C#图解 类和继承

2021-04-21 20:26

阅读:340

---恢复内容开始---

一:类继承:

派生类成员组成如下:

1:自己声明的成员        基类的成员

2:派生类不能删除他所继承的任何成员

例如:展示了名为OtherClass的类的声明,他继承的名称为someClass的类;

技术分享图片

 3:访问继承的成员

 继承的成员可以被访问,就像他们输是自己的派生类的声明的一样

 所有类都自派生成object类:除了特殊的object类,所有的类都是派生类,类object是唯一的非派生类

技术分享图片

一个类声明的基类规格说明中只能有一个单独的类,成为单继承

虽然类只能直接继承一个基类,但继承的层次没有限制。

4:隐藏基类的成员:

 》1:要隐藏一个继承的数据成员,需要声明一个相同的数据类型的成员,并使用相同的名称

》2:通过在派生类中生成新的带有相同签名(由参数和成员列表组成,但不包括返回值)的函数成员,可以隐藏或者掩盖继承的函数成员

》3:你在故意隐藏继承的成员,使用new访问修饰符

》4:也可以隐藏静态成员

技术分享图片

隐藏了继承的成员变量,注意new访问修饰符:

技术分享图片

技术分享图片

 

 基类的访问:

技术分享图片

派生类的实例由基类的实例加上派生类附加的成员组成,派生类的引用指向整个类对象,包括基类部分

虚方法和覆写方法:

可以使用基类引用调用派生类的方法,只需要满足下面的条件:

》1:派生类的方法和基类的方法有相同的签名和返回类型

》2:基类的方法使用virtual标注

》3:派生类的方法使用oveerride标注

基类的方法被标记为virtual

在派生类中匹配的override方法

 

 技术分享图片

其他关于virtual和override修饰的符的重要信息如下:

》1:覆写和被覆的方法必须有相同的课访问性,换一种说法,被覆盖的方法不能是private等,而覆写的方法是public。

》2:不能覆写static方法或者是非虚方法

》3:方法,属性和索引,以及称为事件的另一种成员类型,他们都可以被声明为virtual和override。

 


评论


亲,登录后才可以留言!