xiaolong85 发表于 2014-2-14 21:37:21

关于基类和派生类对象的问题

今天突然看到这个有点懵((Employee)m1).Name = "Mary";然后发现这是把派生类对象转换为基类对象,以前还没见过基类和派生类对象之间转换,请问基类对象可以转换为派生类对象吗?如果是大神就请讲解全面些,谢谢~~~                                                                                                       

hb349804 发表于 2014-2-14 23:01:44

这是把派生类强制转换为基类,当然是可以的了。如果要实现隐式转换,就需要重载一个构造函数。

baicai 发表于 2014-3-3 10:36:24

设Emploee类继承自Person类,如果有一Person实例,但不确定是否是Emploee则可以用as进行转换测试,
Person p = 某实例;
Emploee emp = p as Emploee;
if(emp == null) //不能转换
else可以转换
页: [1]
查看完整版本: 关于基类和派生类对象的问题