noteBook2.10-C#基础第十天

来源:互联网 发布:快速充电器软件下载 编辑:程序博客网 时间:2024/06/05 19:51

继承:

当需要在一些类中重复写相同的成员时,可以将这些重复的成员单独封装到一个类中,作为这些类的父类。

父类         基类

子类         派生类

1.子类继承了父类的属性和方法,但子类没有继承父类的私有字段;

2.子类没有继承父类的构造函数,但是子类会默认调用父类无参数的构造函数,创建父类对象,让子类可以使用父类的成员;所以如果在父类中重新写了一个有参的构造函数,则无参的被替代,子类调用不到无参的构造函数,会报错;

         解决方法:

         1.在父类中重写一个无参的构造函数;

         2.在子类中显示的调用父类有残构造函数,使用关键字:base().

继承的特性:

1.单根性:一个子类只能有一个父类;

2.传递性:

new:

base:

里氏转换:

1.子类可以赋值给父类;

2.如果父类中装的是子类对象,可以将这个父类强制转为子类对象;

         Person(父)Student(子)

         Person      p=new Student();//1

         Student    s=(Student)p;//2

3.里氏转换是否成功:

         is:如果转换成功,返回true,反之false

                  if(p   is      Student){}

         as:如果转换成功,返回相应对象,否则返回null

                   Student    t=P   as     Student;

访问修饰符Protected:

受保护的,可以在当前类的内部及该类的子类中访问。
原创粉丝点击