首先,c# 里的 this 代表正在运行的当前实例,也就是这个类的一个实例(只不过系统是自己生成,不用我们显式声明和初始化)
第二, c#类中的默认构造函数(也就是无形参,无实现体的)在代码中是可以缺省的,我们可以不用代码写出来。(如果缺省,程序在编译的时候,系统会为我们加上这个构造函数)
第三,对构造函数 Func(para):this()来说 ,表示的是Func构造函数可以调用 this()函数里的代码,而this()就是Func的无行参的重载函数。 必须这样写,而不能写成Func(para):Func()
最后,我们可以知道
public IssueSubject(IContainer Container) : this()
表示的是 IssuSubject(Container) 调用自己类中的另一个函数中的代码(而这个函数this()就是此类中的默认构造函数 IssueSubject() ),
而恰好,这个默认构造函数 public IssueSubject() { } 没有显式写出来
ps:构造函数中this的用法其实可以通用,对于java也适用。