Constructor() 中使用的关键字是什么:关键字

What are the keywords that are used in Constructor() : Keyword

我开始学习 C#,我看到在继承中我们这样做 :

derivedClass(): base() 

然后我注意到在另一个示例中使用了 :

Constructor(): this(parameter) 

我不太明白

我的问题是像这样使用关键字

Constructor() : Keyword 

有名字吗?它们有哪些用途?

谢谢!

如其描述here

base 关键字用于从派生 class:1

中访问基 class 的成员
  • 调用基 class 上已被其他方法覆盖的方法。

  • 指定在创建派生的 class.

  • 实例时应调用哪个 base-class 构造函数

第二个项目符号就是您要查找的内容。 derivedClass有一个无参数的构造函数,它调用基础class的无参数构造函数。

关于this,指的是class的当前实例。所以调用这个 Constructor() 会调用另一个应该在 class 中定义的构造函数,它需要一个参数。

规范将这些称为 构造函数初始化器,并将 thisbase 列为有效。来自规范:

10.11.1 Constructor initializers

All instance constructors (except those for class object) implicitly include an invocation of another instance constructor immediately before the constructor-body. The constructor to implicitly invoke is determined by the constructor-initializer:

• An instance constructor initializer of the form base(argument-listopt) causes an instance constructor from the direct base class to be invoked. ...

• An instance constructor initializer of the form this(argument-listopt) causes an instance constructor from the class itself to be invoked. ...