【发布时间】:2011-01-07 05:40:50
【问题描述】:
System.Web.UI.WebControls.UI.TableHeaderCell
派生自
System.Web.UI.WebControls.UI.TableCell
所以一个带有签名foo(TableCell tc){}的方法
将接受 TableHeaderCell 的实例。
但是,如果我创建两个新类并从 TableCell 派生一个,另一个从 TableHeaderCell 派生,那么我的新 TableHeaderCell 类显然无法转换为我的新 TableCell 类,因为它们没有直接关系。
有没有办法解决这个问题?我猜没有。
【问题讨论】:
-
虽然“很明显”你说的是真的(参见 Jon 的图表),但这并不是因为“派生类继承方式不同”。只是因为 C# 没有多重继承。
标签: c# casting derived-class