C# 2.0 的partial
来源:互联网 发布:java软件工程师中心 编辑:程序博客网 时间:2024/06/06 14:18
作者:21aspnet
转自:http://blog.csdn.net/21aspnet/article/details/1539849
partial 关键字的作用是将你的 class 分为多个部分,编译器会将多个部分拼到一起去。
public partial class SampleClass
...{
public void MethodA()
...{
}
}
public partial class SampleClass
...{
public void MethodB()
...{
}
}
和
public class SampleClass
...{
public void MethodA()
...{
}
public void MethodB()
...{
}
}
是等价的。
我猜想这个东西出现的初衷是为了解决掉:“窗体设计器生成的代码”这个令人讨厌的 region。
对我们来说,在团队开发当中这个东西或许也会有点用处。
我观察了一下生成的 IL 代码,使用 partial 生成的代码并没有什么特殊的标记,这说明 partial 纯粹是语言的特性,CLR 完全不知道这么个玩意的存在,这也就意味着不要指望将 partial class 编译为 assembly 或者 module 什么的再与其他的人写的 partial class 去进行拼接:它只能在编译的时候起作用。
为了考验一下编译器,我试着让某一个 partial class 不显式指定父类,发现代码仍然能够正确的通过编译,编译器会按照某一个显式指定了父类的 partial 进行编译,只有在多个 partial 指定了不同父类时才会报错。同样,如果多个 partial 指定了自相矛盾的修饰符的话,编译时也会报错的。
有意思的是,我们还可以写以下这样的代码:
public partial class Sample
...{
public partial class SampleSon
...{
public partial class SampleGrandson
...{
}
}
}
public partial class Sample
...{
public partial class SampleSon
...{
public partial class SampleGrandson
...{
}
}
}
- C# 2.0 的partial
- C# 2.0 的partial
- C#2.0的分部类partial
- c#的partial用法
- C#2.0 -- Partial Types
- C#2.0 Partial 特性
- C# 2.0 - Partial
- C# 2.0 之 partial
- C#2.0 Partial 特性
- C# 2.0 - Partial
- C# 2.0 - Partial
- C# 2.0 - Partial
- C#中partial的使用
- c# partial class 的用法
- c# partial class 的用法
- C#中partial的解释
- C# partial修饰词的使用
- C# 2.0 之 partial[1]
- String.Format格式说明
- C#字符串处理类
- Oracle 数据字典介绍与使用
- 数组复制
- 将Byte数组转化为String
- C# 2.0 的partial
- 30 Python Language Features and Tricks You May Not Know About
- Android Re-installation failed due to different application signatures.错误的解决
- *.bat格式的文件
- ram存储器的简单实现
- C#中string与byte[]的转换帮助类
- C语言指针5分钟教程
- 数据挖掘+人工智能,教育定制化下的学霸量产
- 细数JDK里的设计模式