C#关键字之Partial详解
来源:互联网 发布:ecs绑定域名 编辑:程序博客网 时间:2024/05/17 22:06
Partial是局部类型的标志。局部类型可以实现将一个类、结构或接口分成几个部分,分别放在在几个不同的.cs文件中(当然也可以放在同一个.cs文件中)。在程序进行编译之后,将会合并成一个完整的类。因此局部类型并没有看起来那么难以理解,使用partial只是让类变得更容易管理,实际使用时和普通的类一样。
适用范围:
(1)类型特别大,不适合放在一个文件中实现。
(2) 一个类型中的一部分代码为自动化工具生成的代码,不宜与我们自己编写的代码混合在一起。(如设计模式中的“模板方法”。模板方法就是把所有相同功能都写在父类中,需要有变化的方法在父类中写成虚方法,然后在子类中重写虚方法,因此模板方法利用partial实现了代码的利用。)
(3)一个类同时需要多个人编写。注意事项:
(1)只适用于类、接口、结构,不支持委托和枚举。
(2)同一个类型的各个部分必须有修饰符partial。
(3)使用局部类型时,一个类型的各个部分必须位于相同的命名空间中。
(4)一个类型的各个部分必须同时被编译。
(5)partial只有和class、struct、interface放在一起时才表示局部类型。
(6)一个类型的各部分子类的访问修饰符必须保证一致性。
(7)若其中一个部分类使用了static/abstract/sealed修饰符,则整个类都是静态类/抽象类/密封类。(后面会有static/abstract/sealed的详解)。另外注意不能在一个部分类上使用static,在另一个部分类上使用abstract。
(8)局部类型的累加效应。
a. 特性的累加效应。
[Attribute1, Attribute2("Hello")]partial class Class1{}[Attribute3, Attribute2("Exit")]partial class Class1{}相当于[Attribute1, Attribute2("Hello"), Attribute3, Attribute2("Exit")]class Class1 {}注:Attribute2属性允许在类上多次使用。
b. 接口的累加效应。
partial class Class2: Iinterface1, Iinterface2 {}partial class Class2: Iinterface3 {}partial class Class2: Iinterface2 {}相当于class Class2: Iinterface1, Iinterface2, Iinterface3 {}
0 0
- C#关键字之Partial详解
- C# partial 关键字详解
- C# 中partial 关键字详解
- C#中partial关键字
- C#中partial关键字
- C#中partial关键字
- C#中partial关键字
- C#中partial关键字
- C# 窗口类定义中的 partial 关键字详解
- C# partial 详解
- c#关键字之详解
- C# 2.0 之 partial
- C#中的关键字Partial,where,yieId!
- c# 中partial关键字的作用
- C#里partial关键字的作用
- C#2.0 : partial 关键字及 winform 体验
- c#2.0语法新关键字 partial
- C#里partial关键字的作用(ZZ)
- vijos1579——宿命的PSS
- python install package
- 浅谈SVM(一)
- 文章标题
- python模块的加载与重载
- C#关键字之Partial详解
- 简单选择排序及其改进算法
- 抽象类与接口
- Gldie使用小技巧
- 手机共享wifi给台式机
- [ASIFT 2] ASIFT Resize Images and simulate a tilt
- lintcode(58)四数之和
- ZOJ 3962 Seven Segment Display (数位 DP)
- 第一篇博客-CSDN-markdown编辑器(自动生成)