zoukankan      html  css  js  c++  java
  • C# 分部类与分部方法

    一.定义

      分部方法是指能够使编码人员跨多个代码文件实现类型的语法。简而言之。它可以让我们在一个文件中构建方法原型,而在另一个文件中实现

      使用分部方法和分部类需要使用关键词partial,且紧靠在class、struct、interface或void之前。

      每一个分部类型必须有完全相同的限定名。

    二.注意事项

      1.分部方法只可以定义在分部类中

      2.分部方法返回值必须为void

      3.分部方法可以是静态的或实例级别的

      4.分部方法可以有参数(包含被this、ref或params修饰的参数,但不能有out修饰符)

    三.分部类

      1.分部类就是将接口、结构、类或者方法的拆分到两个或多个文件中。而编译时会将所有分部编译在一起

      2.要求和分部方法类似:关键字partical,分部类之间可访问性,抽象、静态、都必须是相同的。

      3.各个分部类之间可以相互调用其参数,方法等

      4.各个分部类继承的接口和基类都是共同继承的

    四.举例

      为了看到分部方法的定义,新建个类CarProperty,定义个方法Move,在方法内部有个分部方法Accelearte

    static partial class CarProperty
        {
            public static bool Move(int s) {
                Accelerate(s);
                return true;
            }
           static partial void Accelerate(int s);
        }

      此时在MainWindow下面添加代码,运行

     public MainWindow()
            {
                InitializeComponent();
                CarProperty.Move(20);
                MessageBox.Show("所有动作都已结束");
            }

      结果是除了“所有动作已结束”之外没有任何其他动作。

      在其他分部或者没有分部为Accelerate()方法添加内容时,该方法在编译时是被忽略的,所以不会有任何动作

      下面再新建个类,作为分部类,实现Accelerate方法。

     static partial class CarProperty
        {
            static partial void Accelerate(int s)
            {
                MessageBox.Show(s.ToString()+"已加速!");
            }
        }

      注意分部类的关键词和访问级别都是相同,运行程序,可见Accelerate()方法已完全实现。

    五.用途

      在使用过程中,需要应用的方法可以在分部类内写出具体实现内容。在不需要应用该方法时可以注释掉,然后运行程序。

    六.示例代码

      

      

  • 相关阅读:
    WCF RIA 服务 (1——安装篇)
    Silverlight WCF RIA服务(二十九)Silverlight 客户端 10
    Silverlight WCF RIA服务(二十)Silverlight 客户端
    Silverlight WCF RIA服务(二十四)Silverlight 客户端 5
    Silverlight WCF RIA服务(十四)数据 4
    Silverlight WCF RIA服务(二十六)Silverlight 客户端 7
    WCF RIA Services 简介
    Introduction to .NET RIA Services for Silverlight 3
    Silverlight中服务通信方式的选择(WCF、Data Service、Ria Service)
    WCF RIA Services使用详解
  • 原文地址:https://www.cnblogs.com/Khan-Sadas/p/5231369.html
Copyright © 2011-2022 走看看