zoukankan      html  css  js  c++  java
  • c# 之partial(分部代码和分部类)

    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参数
        //分部方法可以只存在声明而不实现它
        //未实现的分部方法在代码生成时会自动被编译器移除,不会带来额外的开销
        partial void PrintHello();
        partial void PrintWorld();
      }
    }

    使用分布类的一些限制:

    1.要作为同一类型的各个部分的所有分部类型定义都必须使用partial 进行修饰。如下所示:

    public partial class A { }

    public class A { } // Error, must also be marked partial

    2. partial 修饰符只能出现在紧靠关键字class、struct 或interface前面的位置(枚举或其它类型都不能使用partial);

    3. 要成为同一类型的各个部分的所有分部类型定义都必须在同一程序集和同一模块(.exe 或.dll 文件)中进行定义。分部定义不能跨越多个模块;

    4. 类名和泛型类型参数在所有的分部类型定义中都必须匹配。泛型类型可以是分部的。每个分部声明都必须以相同的顺序使用相同的参数名。

  • 相关阅读:
    Spring事务管理
    Spring中使用Hibernate
    tkinter学习笔记_04
    tkinter学习笔记_03
    tkinter学习笔记_02
    tkinter学习笔记_01
    tkinter模块常用参数(python3)
    单选框默认选中
    Tkinter & mysql 的登录框练习
    python爬虫-喜马拉雅_晚安妈妈睡前故事
  • 原文地址:https://www.cnblogs.com/zmztya/p/7079355.html
Copyright © 2011-2022 走看看