C#之多态与继承
1. 子类继承父类的成员变量与方法;多态是父类的函数在子类的具体的不同的实现,注意需标明virtual和override。
Main里面第二句在初始化的时候先调用了父类的构造函数又调用了自己的。
2. 使用new表明没有复写,使用override表明复写
当objA调用write时C类的write标注了new不是复写所以D类调用A类的write实际是调用B类的(B类override了A类的);
objB调用时调用子类B自己的write;
因为objC的父类是C,而C又将wirte另外重写,所以objc调用的是D类复写C类的write;
objD则是A类直接调用。
3. abstract的方法必须在所有的子类实现但是在自身中没有实现,而sealed类与abstract恰好相反,它完全不允许派生,嵌套类能使用外部类的所有成员甚至私有成员(好想要加static???)
4. The root of all class : Object