分部类(partial class)和分部方法

分部类

类的声明可以分割成几个分部类的声明。

●每个分部类的声明都含有一些类成员的声明。

●类的分部类声明可以在同一文件中也可以在不同文件中。

●每个局部声明必须被标为partial class,而不是单独的关键字class,分部类声明看起来和普通类声明相同,除了那个附加类型修饰符partial。


分部方法

分部方法是声明在分部类中不同部分的方法。分部方法的不同部分可以声明在不同分部类中,也可以声明在同一个类中,分部方法的两个部分如下。

●定义分部方法声明。

    ■给出签名和返回类型。

    ■声明的实现部分知识一个分号。

●实现分部方法声明。

    ■给出签名和返回类型。

    ■是以正常形式的语句块实现。

注意:

●定义声明和实现声明的签名和返回类型必须匹配。签名和返回类型有如下特征。

    ■返回类型必须是void。

    ■签名不能包括访问修饰符,这使分部方法是隐式私有的。

    ■参数列表不能包含out参数。

    ■在定义声明和实现声明中都必须包含上下文关键字partial,直接放在关键字void之前。

●可以有定义部分而没有实现部分。在这种情况下,编译器把方法的声明以及方法内部任何对方法的调用都移除。不能只有分部方法的实现部分而没有定义部分。

 partial class MyClass
    {
        partial void PrintSum(int x, int y);


        public void Add(int x, int y)
        {
            PrintSum(x, y);
        }
    }


    partial class MyClass
    {
        partial void PrintSum(int x, int y)
        {
            Console.WriteLine("Sum is {0}",x+y);
        }
    }


   
    public class Class1
    {


        public static void Main(string [] args) {
            Console.ReadKey();
        }
    }

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Partial Class 是指将一个类成多个部,每个部可以在不同的文件中进行定义。这样做的好处有几个:可以方便多个程序员同时进行开发;可以将系统自动生成的代码通过独立的Partial Class加入而不需要改动原先的类;可以对一个大型类进行功能性划,便于管理和维护。Partial Class 可以用于 class、struct、方法、interface等,并且这些类或结构不限于一个文件中。如果一个类中存在多个局部类,编译时会将它们合并在同一个类中。局部类可以包含局部方法,当需要调用某个方法但又不想编写实现时,可以声明一个局部方法,编译器在编译时会检查是否有调用该方法的地方,如果没有则自动将其删除。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [Partial Class类](https://blog.csdn.net/weixin_30245867/article/details/95269960)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] - *2* *3* [1.3.8 局部类partial class)](https://blog.csdn.net/qq_42829302/article/details/98214521)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_2"}}] [.reference_item style="max-width: 50%"] [ .reference_list ]

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值