开发者论坛

 找回密码
 注册 (请使用非IE浏览器)
查看: 4628|回复: 2

[求助] 关于基类和派生类对象的问题

[复制链接]

0

精华

0

贡献

24

赞扬

帖子
23
软币
208
在线时间
17 小时
注册时间
2014-2-11
发表于 2014-2-14 21:37:21 | 显示全部楼层 |阅读模式
今天突然看到这个有点懵((Employee)m1).Name = "Mary";然后发现这是把派生类对象转换为基类对象,以前还没见过基类和派生类对象之间转换,请问基类对象可以转换为派生类对象吗?如果是大神就请讲解全面些,谢谢~~~                                                                                                       

回复

使用道具 举报

0

精华

37

贡献

122

赞扬

帖子
657
软币
3473
在线时间
315 小时
注册时间
2013-7-9
发表于 2014-2-14 23:01:44 | 显示全部楼层
这是把派生类强制转换为基类,当然是可以的了。如果要实现隐式转换,就需要重载一个构造函数。
回复

使用道具 举报

0

精华

5

贡献

17

赞扬

帖子
15
软币
204
在线时间
8 小时
注册时间
2013-6-15
发表于 2014-3-3 10:36:24 | 显示全部楼层
设Emploee类继承自Person类,如果有一Person实例,但不确定是否是Emploee则可以用as进行转换测试,
Person p = 某实例;
Emploee emp = p as Emploee;
if(emp == null) //不能转换
else可以转换
回复

使用道具 举报

Archiver|手机版|小黑屋|开发者网 ( 苏ICP备08004430号-2 )
版权所有:南京韵文教育信息咨询有限公司

GMT+8, 2024-12-23 13:33

Powered by Discuz! X3.4

Copyright © 2001-2021, Tencent Cloud.

快速回复 返回顶部 返回列表