欢迎来到代码驿站!

.NET代码

当前位置:首页 > 软件编程 > .NET代码

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

时间:2020-10-20 15:16:14|栏目:.NET代码|点击:

继承反应了类和类之间的关系。

世界上很多事物都是有共性的,共性的那一部分我们就抽象为基类,用于派生其它类,这样提高了代码的复用性,使得代码的结构清晰易读,而且易于代码的扩展和维护。

C#的继承只能继承自一个基类,这一点不同于C++的继承。

C#的继承具有传递性,即B继承自A,C继承自B,则C具有A的所有特性。

C#的继承隐式为public的。

假如不在派生类构造器中显示调用一个基类构造器,编译器会自动插入对基类的默认构造器的一个调用,然后才会执行派生类构造器中的代码, 如果基类没有默认的构造器,会造成编译错误。

举例:动物的共性:有嘴巴,有眼睛,有鼻子,可以移动,能够吃东西

所以定义基类   (包含动物的共性)

复制代码 代码如下:

public class Animal {
      ......       
    }

再定义具体的动物的时候就可以继承自基类Animal,不用再重新定义这些基本的特征,只定义自己独有的特性就好。

例如:Dog

复制代码 代码如下:

public class Dog:Animal
    {  
        //编译器会自动插入对基类的默认构造器的一个调用,然后才会执行派生类构造器中的代码
        public string Bark;//狗叫声
    }

复制代码 代码如下:

public class Dog : Animal {
//在派生类构造器中显示调用一个基类构造器
        public Dog()
            : base() {
        }
        public string Bark;
    }


注意:

可以把一个派生类的值赋给基类,但不能把一个基类的值赋给派生类,因为基类不能转换为派生类,基类中只包含了派生类的一部分特性。

Animal animal=new Dog(); 正确的

Dog dog=new Animal();错误

上一篇:asp.net post方法中参数取不出来的解决方法

栏    目:.NET代码

下一篇:c# 循环语句的使用方法

本文标题:C#中面向对象编程机制之继承学习笔记

本文地址:http://www.codeinn.net/misctech/14135.html

推荐教程

广告投放 | 联系我们 | 版权申明

重要申明:本站所有的文章、图片、评论等,均由网友发表或上传并维护或收集自网络,属个人行为,与本站立场无关。

如果侵犯了您的权利,请与我们联系,我们将在24小时内进行处理、任何非本站因素导致的法律后果,本站均不负任何责任。

联系QQ:914707363 | 邮箱:codeinn#126.com(#换成@)

Copyright © 2020 代码驿站 版权所有