本周学习了 面向对象高级的相关知识。在此可分为三大部分。

  类的继承。类的继承是面向对象的一个重要特征,在程序的开发中可以极大地提高代码的复用行,同时也便于对程序功能的扩展。在程序中,类的继承是事物之间的从属关系,通过继承可以使多种事物之间形成一种关系体系。在c#中,类的继承是指在一个现有类的基础上去构建一个新的类,构建出来的新类被称作子类,现有的类被称作父类,子类会自动拥有父类除构造方法和析构方法以外的所有成员。具体格式为在子类的后面添加冒号和需要继承的父类。例如 class  dog:Animal 这就表明dog类是子类而他继承自它的父类Animal  。在类的继承中需要注意类的继承具有单一性,也就是说一个类只能有一个直接的父类。例如,class  A()     classB()   classC:A,B() 这个语句是错误的因为子类c同时继承了A与B,所以是错误的。 还有就是多个类可以继承同一个类,就好像一个父亲能有多个儿子一样。子类在实例化对象时,首先会调用父类的构造方法,然后在调用自身的构造方法。因为子类继承父类后,获取到父类的属性和方法,这些属性和方法在使用前必须先初始化,所以需先调用父类的构造方法。

  装箱与拆箱。在实际开发过程中,某些方法的参数类型为引用类型,但是如果调用时传入的是直类型,此时需要进行装箱操作。同样当一个方法的返回值类型味值类型,但实际方法返回值为引用类型,那么就需要进行拆箱操作。简单的说,装箱就是将值类型转换为引用类型,拆箱就是将引用类型转换为值类型。

  sealed关键字。  简单来说,使用sealed关键字修饰的类不可被继承,也就是说不能派生子类,这样的类通常被称作密封类。同时,当一个类的方法被sealed关键字修饰后,这个类的子类将不能重写该方法。