gpt4 book ai didi

.net - 子类可以继承构造函数吗?

转载 作者:行者123 更新时间:2023-12-02 20:52:14 25 4
gpt4 key购买 nike

  1. 我有一个基类“B”,其中有两个构造函数,一个没有参数和其他接受一个参数,一个整数
  2. 我有一个子类“S”,它继承自“B”并且不在其中定义任何构造函数。
  3. 我创建了一个 S 实例,试图传递到构造一个整数。

我收到错误:

错误 1 ​​“Public Sub New()”的参数过多

这让我感到惊讶,因为我认为如果子类 S 中没有定义构造函数,则基类构造函数方法(具体来说,具有单个整数参数的构造函数方法)将被调用而不会出现错误。

您知道为什么我会收到此错误吗?构造函数是特殊情况吗?

最佳答案

类的构造函数仅适用于定义它的类,即使在继承关系中也是如此。为了能够利用基类 1-arg 构造函数,您必须执行如下操作(在 C# 中):

public class S : B
{
public S()
{
// do something for S
}

public S(int myInt) : base(myInt)
{
// do something for S
}
}

关于.net - 子类可以继承构造函数吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1042042/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com