【发布时间】:2013-02-12 21:51:56
【问题描述】:
class baseClass
{
derivedClass nm = new derivedClass();
}
class derivedClass : baseClass
{
}
此代码构建良好。 C# 允许在baseClass 中创建derivedClass 对象的可能原因是什么。你能想出这样做的任何具体原因吗?
【问题讨论】:
-
你为什么认为 C# 应该限制这一点?
-
你知道任何限制它的面向对象语言吗?它没有什么特别之处。
-
我想不出在
baseClass中创建derivedClass实例的原因。所以我想知道为什么 C# 允许它? -
@MD.Unicorn:不……我不知道有任何语言限制这一点。但是,如果它没有用,他们为什么不限制呢?如果出于某种原因我们可以使用它,请告诉我原因。
-
想不出用法并不是禁止某事的好理由。我发现类被密封的次数,因为原始开发人员无法想到你会继承它的情况......
标签: c# .net inheritance polymorphism