相关疑难解决方法(0)

base()和this()构造函数的最佳实践

在什么情况下我应该在做:base():this() 构造函数调用以下我的构造函数的括号内(甚至在代码的其他地方).这些什么时候称为良好做法,什么时候强制执行?

c# oop inheritance constructor instantiation

80
推荐指数
5
解决办法
7万
查看次数

C#构造函数 - 为什么默认构造函数仅在没有构造函数时由编译器生成,而不是在没有默认构造函数时生成

根据MSDN的构造函数设计指南,

"如果没有在类型上显式声明任何构造函数,许多语言(如C#)将自动添加公共默认构造函数.(抽象类获取受保护的构造函数.)将参数化构造函数添加到类中可防止编译器添加默认构造函数.这通常会导致意外的破坏性更改."

为什么不:

"如果你没有在类型上显式声明任何默认构造函数,那么许多语言(例如C#)将自动添加一个公共默认构造函数.(抽象类获得受保护的构造函数.)"

这背后的原因是什么?

.net c# constructor

5
推荐指数
2
解决办法
770
查看次数

标签 统计

c# ×2

constructor ×2

.net ×1

inheritance ×1

instantiation ×1

oop ×1