分部类

  • 分部类是一个类的多个部分,可以认为是其子集,所有分部类可以合并成一个完整的类;
  • 可以在一个文件或多个文件中定义分部类

值得注意的是,修饰符partial并不是C#关键字,因此在上下文中可以使用partial作为标识符,但如果是在关键字class、struct或interface中,它就代表分部类。

file1.cs

 

    partial class MyPartClass
    {
       public void Output1(int val)
       {
            Console.WriteLine("{0}", val);
        }
    }

file2.cs

    partial class MyPartClass
    {
        public void Output2(int val)
        {
            Console.WriteLine("{0}", val);
        }
    }

Program.cs

 

    class Program
    {
        static void Main(string[] args)
        {
            MyPartClass myClass = new MyPartClass();
            myClass.Output1(22);
            myClass.Output2(23);
        }
    }

下载代码

Related posts:

  1. C#难点逐个击破(19):List与Dictionary System.Collections.Generic为System.Collections的泛型实现,它包含了一些基于泛型的集合类。其对应关系可用下面两张图进行描述: 图1:System.Collections与System.Collections.Generic若干集合类对应关系 图2:两者结构关系 鉴于两者与之前DataTable和ArrayList使用方法相同,不再作详细说明。举例说明: ?View Code CSHARP/*Dictionary演示*/ static class DictionaryDemo...
  2. C#难点逐个击破(2):out返回参数 之前提到ref是将原方法中的参数影响的结果返回到调用它的方法中,out与ref类似,相比之下,ref传递参数的地址,out是返回值。传值(by value)与传址(by reference)分别为普通传递参数方式与ref声明方式,传址方式在使用前需要ref关键词修饰;out为输出返回传递,与ref相同之处较多,其重要区别是在上一节讲到的ref在被引用方法中必须被初始化;out在被引用方法中一定要有返回值。 using System; /******************************  * Chapter:C#难点逐个击破(一)  * Author:王洪剑...
  3. C#难点逐个击破(3):params数组参数 注意,这里的paras全称是array parameter,也就是数组参数。 paras类型参数主要用于在对数组长度未知(可变)的情况下进行函数声明。在方法声明中只允许一个paras关键字,并且该关键字只能为最后一个。 using System; /******************************  * Chapter:C#难点逐个击破(三)  * Author:王洪剑...
  4. C#难点逐个击破(12):new 使用new重写基类成员 继承类不能删除基类中的成员,但可以使用new关键字来隐藏基类的该成员;new关键字可以显式隐藏从基类继承的成员;若不使用new关键字直接声明同名成员则会出现警告,例: ?View Code CSHARPclass BaseClass { protected int age...
  5. C#难点逐个击破(1):ref参数传递 c#...

以上关联文章由 Yet Another Related Posts Plugin 提供支持。