将参数传递给基类构造函数
Posted
技术标签:
【中文标题】将参数传递给基类构造函数【英文标题】:Passing parameters to the base class constructor 【发布时间】:2021-10-25 07:18:35 【问题描述】:如果基类和派生类都有带参数的构造函数,那么我们在哪里?
【问题讨论】:
这是一个重复的问题。 ***.com/questions/12051/… 谷歌搜索“基类构造函数参数”会为您带来正确的。 你说“你不能实例化一个抽象类”,但这并不完全正确。如果您创建非抽象派生类的实例,则该实例也是抽象基类的实例。它也是 System.Object 类的一个实例。 仅供参考,即使它是abstract
类,它也可以定义自定义构造函数,其参数可以传入。它们不能直接实例化/调用,但是而是在派生类型中通过使用base
keyword 和派生构造函数来引用。
【参考方案1】:
像这样:
public class DerivedClass : BaseClass
public DerivedClass(int derivedParam, String baseParam):base(baseParam)
这里的base
关键字调用与提供的参数重载匹配的基类构造函数。
【讨论】:
如果基构造函数被调用为:base(param)
,是否仍然调用默认构造函数?
没有。该构造函数必须调用this()
@Ahmn21以上是关于将参数传递给基类构造函数的主要内容,如果未能解决你的问题,请参考以下文章