- C# 3.0 - var 隐式类型声明
- C# 3.0 -自动属性实现
- C# 3.0 -对象初始化设置
- C# 3.0 -集合初始化设置
- C# 3.0 -匿名类型
- C# 3.0 -扩展方法
- C# 3.0 - partial 分部(类型)
- C# 3.0 - Lambda
- C# 3.0 - { get; set; } 默认值
- C# 3.0 - { get; set; } 默认值 2
- C# 3.0 - yield
partial,有人将其翻译为“部分(类型)”,但在 MSDN 上,译为“分部(类型)”,所以我们还是使用“分部(类型)”这一说法。
分部类
一般来说,一个类、结构或接口位于一个源文件中,但某些情况,比如大型项目、特殊部署时,可能需要把一个类、结构或接口放在几个文件中来处理。等到编译时,自动把它们合起来,这就得应用 C# 分部类了。
C# 分部类的关键字修饰符是 partial。
public partial class Employee
{
public void DoWork()
{
}
}
public partial class Employee
{
public void GoToLunch()
{
}
}
上述 Employee 编译后拥有两个方法:DoWork() 和 GoToLunch()。
- 分部类的各部分都必须指定修饰符 partial。
- 同一分部类的各部分必须有相同的可访问性,如 public、private 等。
- partial 必须紧靠 class、struct 或 interface 之前。
- 同一分部类的各部分必须在同一程序集或同一模块中(.exe 或 .dll 文件)。
分部方法
分部方法是将方法定义和方法实现分隔开,感觉用处不大,特别是分部方法只能是 private 类型。
public partial class Employee
{
partial void DoWork();
}
public partial class Employee
{
partial void DoWork()
{
}
}
- 分部方法使用 partial 关键词;
- 分部方法隐式为 private 类型,不可使用 public 访问修饰符;
- 分部方法不可有返回值。
- C# 3.0 - var 隐式类型声明
- C# 3.0 -自动属性实现
- C# 3.0 -对象初始化设置
- C# 3.0 -集合初始化设置
- C# 3.0 -匿名类型
- C# 3.0 -扩展方法
- C# 3.0 - partial 分部(类型)
- C# 3.0 - Lambda
- C# 3.0 - { get; set; } 默认值
- C# 3.0 - { get; set; } 默认值 2
- C# 3.0 - yield