这里使用的是哪个类?C#.
本文关键字:这里 | 更新日期: 2023-09-27 18:32:52
如果我有一个基类"Base"和一个派生类"Derived",那么其中哪一个是可以的?
Base b = new Base();
Derived d = new Derived();
(以上2行没问题)
Base b = new Derived();
Derived d = new Base();
他们有什么意义吗?
@Zuzlx的评论是准确的:
所有的牛都是动物,但不是所有的动物都是牛。
将Base
替换为Animal
,Derived
替换为Cow
,它会变得更加清晰:
Animal a = new Cow(); // This works since a cow is always an animal.
Cow c = new Animal(); // Just won't work.