源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

C#中面向对象编程机制之继承学习笔记

  • 时间:2020-10-14 21:29 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:C#中面向对象编程机制之继承学习笔记
继承反应了类和类之间的关系。 世界上很多事物都是有共性的,共性的那一部分我们就抽象为基类,用于派生其它类,这样提高了代码的复用性,使得代码的结构清晰易读,而且易于代码的扩展和维护。 C#的继承只能继承自一个基类,这一点不同于C++的继承。 C#的继承具有传递性,即B继承自A,C继承自B,则C具有A的所有特性。 C#的继承隐式为public的。 假如不在派生类构造器中显示调用一个基类构造器,编译器会自动插入对基类的默认构造器的一个调用,然后才会执行派生类构造器中的代码, 如果基类没有默认的构造器,会造成编译错误。 举例:动物的共性:有嘴巴,有眼睛,有鼻子,可以移动,能够吃东西 所以定义基类   (包含动物的共性)
[u]复制代码[/u] 代码如下:
public class Animal {       ......            }
再定义具体的动物的时候就可以继承自基类Animal,不用再重新定义这些基本的特征,只定义自己独有的特性就好。 例如:Dog
[u]复制代码[/u] 代码如下:
public class Dog:Animal     {           //编译器会自动插入对基类的默认构造器的一个调用,然后才会执行派生类构造器中的代码         public string Bark;//狗叫声     }
[u]复制代码[/u] 代码如下:
public class Dog : Animal { //在派生类构造器中显示调用一个基类构造器         public Dog()             : base() {         }         public string Bark;     }
注意: 可以把一个派生类的值赋给基类,但不能把一个基类的值赋给派生类,因为基类不能转换为派生类,基类中只包含了派生类的一部分特性。 Animal animal=new Dog(); 正确的 Dog dog=new Animal();错误
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部