JetBrains Rider 2025.2 Help

生成类型构造函数

构造函数生成向导会创建一个非默认构造函数,该构造函数使用选定字段、属性和自动属性的参数。

所有生成的构造函数遵循相同的模式:

  • 构造函数中包含的每个字段、属性或自动属性都使用参数进行初始化。

  • 参数的名称来源于对应字段或属性的名称。

如果存在非默认的基类型构造函数,所需的参数会被添加到生成的构造函数中,并传递给基类构造函数。

在下面的示例中,此命令用于生成一个新的 Circle 构造函数,该构造函数接受两个额外的参数来初始化 _radius_center 字段。

生成前

生成后

class Shape { public Shape(Color color) { Color = color; } public Color Color { get; } } class Circle : Shape { int _radius; Point _center; string _id; public Circle(Color color) : base(color) { } }
class Shape { public Shape(Color color) { Color = color; } public Color Color { get; } } class Circle : Shape { int _radius; Point _center; string _id; public Circle(Color color) : base(color) { } public Circle(Color color, int radius, Point center, string id) : base(color) { _radius = radius; _center = center; _id = id; } }

生成构造函数

  1. 在编辑器中,将插入符号放置在类型名称处或类型内您希望插入构造函数的行上。 如果插入点位于类型名称上,生成的代码将添加到类型声明的开头。

  2. 请按 Alt+Insert 或从主菜单中选择 代码|生成...。 或者,您可以按 Ctrl+Shift+A ,在弹出窗口中开始输入命令名称,然后在那里选择它。

  3. 生成 弹出窗口中,选择 构造函数

  4. 在出现的 生成 对话框中,选择应在新构造函数中初始化的类型成员。 (可选)选择一个或多个基类构造函数。 对于每个选定的基类构造函数,将生成一个新的构造函数,该构造函数将调用基类并额外初始化选定的成员。

    使用 JetBrains Rider 生成类型构造函数

    可选地,在对话框中使用以下控件:

    • 访问权限 — 允许您定义生成的构造函数的访问权限。

    • 检查参数是否为空 (如果类具有可空类型的字段或属性时出现)— 如果选中此复选框,JetBrains Rider 将为每个可空参数 生成可配置的空值检查 ,例如: if (param == null) throw new ArgumentNullException(nameof(param));

    • 将形参设为可选 — 如果选中此复选框,JetBrains Rider 将使生成的构造函数的所有参数变为可选,并添加与参数类型对应的默认值。

  5. 点击 确定 以完成向导。

最后修改日期: 2025年 9月 26日