0

我有下面的代码,我试图了解它的作用:

readonly Ido _do;

public Main(): this(new doX()) { }

public Main(Ido do) {
    _do = do;
}

这在第一个构造函数中做了什么?

this(new doX())

以及为什么应用程序首先开始

Main(Ido do)

然后调用

this(new doX())

虽然我认为应该反过来

4

3 回答 3

0

调用该类的另一个构造函数。

: base(...) // Call a base class contructor
: this(...) // Call another constructor in the same class
于 2013-10-02T18:46:38.733 回答
0

调用默认构造函数 - 即没有参数 - 通过调用new Main()将首先执行this(new doX())调用第二个构造函数。

尝试在调试器中单步执行代码,它应该会变得清晰。

于 2013-10-02T18:56:34.213 回答
0

this(new dox)正在为您的类调用参数化构造函数的构造函数。您可以使用this关键字在同一对象中调用另一个构造函数。

于 2013-10-02T18:45:03.797 回答