C#2.0至4.0 的一些特性

时间:2021-07-18 23:50:26

罗列清单备查

一、C#2.0

1. Partial class 分部类

file1.cs

using System;
public partial class MyClass
{
public void MyMethod1()
{
Console.WriteLine("MyMethod1 人工编写的代码");
}
}

file2.cs

using System;
public partial class MyClass
{
public void MyMethod2()
{
Console.WriteLine("MyMethod2 通常是自动生成的代码,如webService 之类");
}
}

编译:

csc /out:lib.dll  /t:library file1.cs file2.cs
csc /out:App.exe /r:lib.dll app.cs

2. Generics 泛型

3.  Static classes 静态类

静态类中不能有实例方法,没有实例构造器,可以有静态构造器,功能类似于面向过程语言中 Module(模块)的功能

using System;
public static class UtilityClass
{
public static void Foo()
{
Console.WriteLine("Hello");
}
}
using System;
class App
{
static void Main()
{
UtilityClass.Foo();
}
}

C#2.0至4.0 的一些特性可以看出静态类是没有实例构造器的

C#2.0至4.0 的一些特性非静态类是有实例构造器的

4. iterator 迭代器

5. Anomymous Methods 匿名方法

6. Nullable types 可空类型

7. ?? 操作符

object nullObj = null;
object obj = new Object();
return nullObj ?? obj; // returns obj

二、 C# 3.0

1. LINQ(language-integrated query)

2. Object initializers 对象初始化器

3. Colletion initializers 集合初始化器

4. Anomymous types 匿名类型 (var)

5. Lambda expressions Lambda 表达式

6. Automatic properties 自动完成属性

7. Extension methods 扩展方法

三、 C# 4.0

1. Optional parameters and named arguments 可选参数和命名参数

四、参考资料

C# 2.0: MSDN   Wikipedia

C# 3.0: MSDN   Wikipedia

C# 4.0: MSDN   Wikipedia   What's New On C# 4.0

2015-1-2 补充一幅 C#演化图

C#2.0至4.0 的一些特性

未完