Thread t = new Thread(new ThreadStart(Go));
Thread t1 = new Thread(Go);
两种方法在C#2.0及其更高版本没有区别:前者是C#1.0的语法;后者是C#2.0新增加的语法。
Thread类构造函数的参数是一个委托,括号里的表示定义一个委托实例。
这两条语句都是把一个委托实例作为参数,但是:
1) 前者是属于C#1.0的语法,通过 new ThreadStart(方法名) 完整的定义了一个委托实例。
他虽然不是很难看,但是也不方便,特别是在一个比较长的语句里。
于是,C#2.0 对这个语言特性进行了简化:一个方法能隐式转换为 一个兼容的委托实例。这就是「方法组转换」。
2) 所以,后者就是前者在C#2.0极更高版本的简写方法。 除非还在使用C#1.0,否则用后者写法更简单。
|