【发布时间】:2016-02-01 22:17:41
【问题描述】:
如果我有一个基类“Base”和一个派生类“Derived”,那么其中哪一个可以?
Base b = new Base();
Derived d = new Derived();
(上面两行就可以了)
Base b = new Derived();
Derived d = new Base();
它们有什么意义吗?
【问题讨论】:
-
您不能将基实例分配给派生类型的变量。其他一切都有效。
-
所有的牛都是动物,但并非所有的动物都是牛。
-
我强烈建议搜索并阅读多态性教程,这个问题的完整答案太宽泛,无法放入简单的问答中,简单的“是的,xyz 没问题”显然是也不会帮助你那么多。
-
你为什么不简单地尝试一下?然后在这里发布问题会更快。如果您需要文档,请参阅以下关闭原因:“要求我们推荐或查找书籍、工具、软件库、教程或其他非现场资源的问题对于 Stack Overflow 来说是无关紧要的,因为它们往往会吸引固执己见的答案和垃圾邮件”
标签: c# instantiation