请教一个C#继承的问题

来源:百度知道 编辑:UC知道 时间:2024/05/29 23:31:48
比如parent是父类,son是子类,有这样一个定义parent p=new son();请问这个p究竟属于哪个类?这个定义与parent p=new parent()或son p=new son()有什么区别?又为什么要这么定义呢?这个p在调用父类或子类的方法上有什么特殊之处?

p到底是什么类取决于new了哪个类。比方说:
p = new son() 那么p就是son类
p = new parent() 那么p就是parent类。

继承的这种用法在设计模式里被广为应用,你可以学习一下其中的工厂/抽象工厂方法,一定会对你受益匪浅的。

继承是一个获得现有类的功能的过程,它遵循代码重用的原则。使用它可以在现有类的基础上添加新的方法、属性和事件(事件是对用户操作的响应),既省时又省力。用于他建新类的类称为基类或父类,而新建的类称为派生类或子类。