预览加载中,请您耐心等待几秒...
1/10
2/10
3/10
4/10
5/10
6/10
7/10
8/10
9/10
10/10

亲,该文档总共29页,到这已经超出免费预览范围,如果喜欢就直接下载吧~

如果您无法下载资料,请参考说明:

1、部分资料下载需要金币,请确保您的账户上有足够的金币

2、已购买过的文档,再次下载不重复扣费

3、资料包下载后请先用软件解压,在使用对应软件打开

继承继承的概念继承卡车和公共汽车都是汽车继承的定义: 如果要声明一个类派生于另一个类,可以使用下面语法: [修饰符]class派生类名:基类名 { //类体 } 其中: 修饰符可选用public,private,protected,internal,abstract,sealed,new等修饰符。 基类名为被派生类继承的基类名称。 继承的特点继承的优点 被继承的类称为父类(或基类),继承的类称为派生类(或子类)。继承是面向对象程序设计的主要特征之一,它可以让您重用代码,可以节省程序设计的时间。继承就是在类之间建立一种相交关系,使得新定义的派生类的实例可以继承已有的基类的特征和能力,而且可以加入新的特性或者是修改已有的特性建立起类的新层次。面向对象的封装命名空间嵌套命名空间导入命名空间访问修饰符编译程序集构造函数密封构造函数实例变量与静态变量结构的构造函数注册表类总结多态是指两个或多个属于不同类的对象,对于同一个消息(方法调用)作出不同响应的方式。 继承使得派生与基类的类在方法上有一定的重叠,因此可以使用相同的语法处理从同一个基类实例化的对象。 多态使得子类的实例可以直接赋予基类的变量,在这里不需要进行强制类型转换,然后直接就可以通过这个变量调用基类的方法。 在派生于同一个类的不同对象上执行任务时,多态是一种极为有效的技巧,使用的代码最少。可以把一组对象放到一个数组中然后调用他们的方法,在这种情况下多态的作用就体现出来了,这些对象不必是相同类型的对象。当然如果它们都继承自某个类,可以把这些派生类都放到一个数组中。如果这些对象都有同名方法,就可以调用每个对象的同名方法。 实现多态的方式: 一、抽象类和抽象方法 二、虚方法 三、方法重载 四、方法隐藏 五、静态(satice)类/密封(sealed)类/抽象(abstract)类 一、抽象类和抽象方法 1、抽象类的语法: 访问修饰符abstracclass类名 2、父类中的方法: 访问修饰符abstrac返回类型方法(); 注意:含有抽象方法的类必然是抽象类。抽象类中的方法并不一定都是抽象方法。 抽象类是不能被实例化的。只能通过它的子类来实现该类的方法,除非它的子类也是一个抽象类。 抽象类不能是密封或者静态的,抽象类被子类继承并实现它的抽象方法。 3、重写抽象方法: 访问修饰符override返回类型方法()二、虚方法: 访问修饰符virtual返回类型方法() { //方法体 } 1、每个对象Object都有一个Equals()方法,用于确定两个实例对象是否相等,它是一个虚方法,可以重写这个方法。 publicvirtualboolEquals(Objectobj) 默认情况下,Equals()方法只支持引用相等,也就是相比较的两个对象是否引用同一个对象。 2、虚方法和抽象方法的区别: A、修饰的关键字不同 B、父类中方法体的区别 C、重写的区别(抽象方法必须override) D、抽象方法只能在抽象类中,而虚方法除了密封类外都可以写 3、方法重写的条件: A、方法签名必须一样 B、访问修饰符允许被放大 C、返回类型必须一样三、方法重载 1、与重写方法的区别 A、应用场合不同:如果父类中abstract/virtual,才能被重写,重写方法要求类与类之间是继承关系。 而重载没有过多的要求。 四、方法隐藏:父类和子类的方法都存在。 五、静态(satice)类/密封(sealed)类/抽象(abstract)类各自的特点。总结