亿迅智能制造网
工业4.0先进制造技术信息网站!
首页 | 制造技术 | 制造设备 | 工业物联网 | 工业材料 | 设备保养维修 | 工业编程 |
home  MfgRobots >> 亿迅智能制造网 >  >> Industrial programming >> C语言

C# 部分类和部分方法

C#部分类和部分方法

在本文中,我们将了解如何以及为什么在 C# 中实现部分类和部分方法。

在很多情况下,您可能需要拆分类定义,例如在处理大型项目时,多个开发人员和程序员可能需要同时处理同一个类。在这种情况下,我们可以使用称为 Partial Class 的功能 .


部分类介绍

在使用 C#(或 OOP)编程时,我们可以将类的定义拆分为两个或多个源文件。源文件包含类定义的一部分,所有部分在编译应用程序时组合在一起。为了拆分类定义,我们需要使用 partial 关键字。

示例 1:

我们有一个名为 HeightWeightInfo 的项目 显示身高和体重。

我们有一个名为 File1.cs 的文件 具有名为 Record 的部分类 .它有两个整数变量 h &w 和一个名为 Record 的方法/构造函数 这是分配 h 的值 &w .

namespace HeightWeightInfo
{
    class File1
    {
    }
    public partial class Record
    {
        private int h;
        private int w;
        public Record(int h, int w)
        {
            this.h = h;
            this.w = w;
        }
    }
}

这是另一个名为 File2.cs 的文件,具有相同的部分类 Record 它只有方法 PrintRecord .此方法将显示 h 的值 &w .

namespace HeightWeightInfo
{
    class File2
    {
    }
    public partial class Record
    {
        public void PrintRecord()
        {
            Console.WriteLine("Height:"+ h);
            Console.WriteLine("Weight:"+ w);
        }
    }
}

现在我们可以看到 main 项目方法:

namespace HeightWeightInfo
{
    class Program
    {
        static void Main(string[] args)
        {
            Record myRecord = new Record(10, 15);
            myRecord.PrintRecord();
            Console.ReadLine();
        }
    }
}

这里我们有 Record 类的对象 作为 myRecord 将参数值作为 10 和 15 传递给 hw 分别到File1.cs中定义的方法 .

PrintRecord 方法 由对象 myRecord 调用 在 File2.cs 中定义 .

这表明 partial 关键字有助于将不同文件中定义的类的所有属性组合成一个类。

partial 的地方 类可以使用:

  1. 在与多个开发人员一起处理大型项目时,它可以帮助开发人员同时处理同一个类。
  2. 可以在类中添加或修改代码,而无需重新创建由 IDE(即 Visual Studio)自动生成的源文件。

关于部分课程的注意事项

partial 关键字指定可以在命名空间中定义类的其他部分。如果我们试图使一个类成为局部的,则必须使用 partial 关键字。类的所有部分都应该在同一个命名空间中,并且在编译时可用以形成最终类型。所有部分必须具有相同的访问修饰符,即私有、公共等。

**注意: partial 修饰符在委托或枚举声明中不可用


分部方法简介

部分类可能包含部分方法。类的一部分包含方法的签名。可选实现可以定义在同一部分或另一部分。如果未提供实现,则在编译时删除该方法和所有调用。

示例 2:

我们以分部类Car为例 在 file1.cs 中定义 其中有三个方法 InitializeCar (), BuildRim () 和 BuildWheels ()。在这些方法中,InitializeCar 定义为 partial .

public partial class Car
{
    partial void InitializeCar();
    public void BuildRim() { }
    public void BuildWheels() { }
}

我们还有另一个名为 file2.cs 的文件 其中有两个方法 BuildEngineInitializeCar . InitializeCar 方法 是在 file1.cs 中定义的部分方法 .

public partial class Car
{
    public void BuildEngine() { }
    partial void InitializeCar()
    {
        string str = "Car";
    }
}

部分方法声明由两部分组成:

  1. file1.cs中的定义 .
  2. file2.cs中的实现 .

它们可能位于局部类的不同部分,也可能位于同一部分。


关于分部方法的注意事项


C语言

  1. C# 类和对象
  2. C#抽象类和方法
  3. C# 密封类和方法
  4. C++ 类和对象
  5. C++朋友函数和朋友类
  6. Java - 对象和类
  7. C# - 继承
  8. C# - 多态性
  9. ASTM A729 Class A 双归一化和回火
  10. ASTM A649 2 类标准化和回火
  11. ASTM A288 Class 4 淬火和回火
  12. ASTM A288 5 级淬火和回火