部分是什么意思?

10
public partial class Form1 : Form

在这个声明中,“partial”是什么意思?我知道我们有一个从Form继承的类Form1。但是partial是什么意思?

2个回答

25

它允许你将类的定义分成两个或更多个独立的文件。

有关更多信息,请参见此MSDN文章,“部分类定义”

可以在两个或多个源文件中分割类、结构体或接口的定义。每个源文件包含类定义的一部分,所有部分在编译应用程序时合并。有几种情况下分割类定义很有必要:

  • 在大型项目上工作时,将类分散到不同的文件中允许多个程序员同时进行工作。
  • 当使用自动生成的源代码时,可以向类添加代码而无需重新创建源文件。Visual Studio在创建Windows Forms、Web服务包装器代码等时使用这种方法。您可以创建使用这些类的代码而无需编辑Visual Studio创建的文件。

你可能在提到Visual Studio创建窗体时的默认行为。这允许窗体的定义在你所拥有并可以修改的文件和Visual Studio所拥有的文件(Form1.Designer.cs)之间分割。这避免了我们在使用Visual Studio 2002和2003时看到的开发人员和IDE经常互相干扰的问题。


4
请注意,方法也可能是部分的。 - Bloodyaugust

4
这允许在源文件中进行部分类定义,并在编译时将它们合并为单个类。在您的情况下,类代码的一半是由代码生成器自动生成的,并隐藏在带有部分类声明的文件中(其中会有很多代码)。通过部分类定义,您可以从头开始输入代码,以便在编译时将自动生成的代码和您的代码组合成一个派生自Form类的单个类。 这是在视觉设计工具等中结合机器和人的代码的常见方式,让您不必编写枯燥的“管道”代码,只需专注于您想要做的事情。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接