【发布时间】:2009-06-06 01:13:03
【问题描述】:
是的,很抱歉问了一个愚蠢的 n00b 问题。所以我有一个 C# 程序。我有课
class foo
{
public int bar, wee, someotherint, someyetanotherint;
public foo()
{
this.bar = 1:
this.wee = 12;
this.someotherint = 1231;
this.someyetanotherint = 443;
}
}
我想创建一个继承自 foo 的名为 spleen 的类
class spleen : foo
{
}
使脾脏类从 foo 继承构造函数而不必从 foo 复制/粘贴整个构造函数的最快、最简单的语法是什么?我不想听到我已经有太多参数了。我已经知道了。 (编辑:实际上,不。我是个白痴)我知道我可能应该以某种方式调用父构造函数,但我不知道如何。我该怎么做。
编辑:我现在意识到我应该花更多时间来写我的问题。看起来我试图在没有意识到的情况下同时问两个问题(如何继承没有参数的构造函数,以及如何继承有参数的构造函数),并且不知何故把它弄乱了。但是,提供的答案非常有帮助并解决了我的问题。谢谢,对不起,我是个白痴!
【问题讨论】:
-
听起来你可能对措辞感到困惑......你不是从 Spleen 继承的,你是从 Foo 继承的——这使得 Foo 成为基类,Spleen 成为子类
-
另请注意,您问题中的 'foo' 构造函数当前没有任何参数。无参数构造函数和它们之间的链接,您可以在 C# 中“免费”获得,因此正如您在问题中所写,“脾脏”完全符合您的要求。
-
为什么说“参数太多”?编辑后,您根本没有任何参数。 (此时,您无需对脾进行任何操作。您显示的代码将编译正常并按预期工作。)
-
顺便说一句,.NET 约定是以 PascalCase 命名类,因此如果您希望您的代码与其他代码相匹配,您可能需要大写您的类名。
标签: c# inheritance constructor