partial关键字修饰的类就是局部类型的意思,含有这个关键字的类、结构体或接口可以写多个相同类名,类名中有不同的方法,最后执行时会将多处类名中的方法综合在一起运行。
public partial class Program
{
static void Main(string[] args)
{
}
}
partial class Program
{
public void Test()
{
}
}
编译后相当于
public class Program
{
static void Main(string[] args)
{
}
public void Test()
{
}
}
再比如:
using System;
namespace Partial
{
class Program
{
static void Main(string[] args)
{
A a = new A();
}
}
partial class A
{
public A()
{
PrintHello();
PrintWorld();
Console.Read();
}
partial void PrintHello()
{
Console.Write("Hello");
}
}
partial class A
{
//分部方法必须存在如下声明,返回类型只可以为void,且不接受Out参数
//分部方法可以只存在声明而不实现它
//未实现的分部方法在代码生成时会自动被编译器移除,不会