首页 > 代码库 > C#中分部类和分部方法的应用
C#中分部类和分部方法的应用
本篇文章介绍了,C#中分部类和分部方法的应用。需要的朋友参考下
分部类(Partial Class)在C#2.0引入,分部方法(Partial Method)在C#3.0引入,这两个语法特性都具有相同的特性:将类(或)方法的代码分散在多个地方。
1.分部类的特性和应用
1.1分部类的定义
在定义一个类时,加上partial关键字,此类即成为分部类。
分部类允许将一个类的代码分散于一个以上的源代码文件中。
Person.cs代码如下
1 namespace PartialClassDemo1 2 { 3 public partial class Person 4 { 5 private int age; 6 Person(int age, string name) 7 { 8 this.age = age; 9 this.name = name;10 }11 public int Age12 {13 get14 {15 return age;16 }17 set18 {19 if (age < 0 || age > 120)20 Console.WriteLine("年龄非法");21 else22 this.age = Age;23 }24 }25 static void Main(string[] args)26 {27 Person p = new Person(19,"张三");28 Console.WriteLine(p.Age);29 Console.ReadKey();30 }31 }32 }
Person2.cs代码如下
1 namespace PartialClassDemo12 {3 public partial class Person4 {5 private string name;6 }7 }
使用分部类时,需要注意一下原则:
(1)所有的需要“合并”的类必须都用partial关键字声明。
(2)所有的需要“合并”的类必须位于同一个项目中。
2.为什么要引入分部类
分部类主要用于隔离来源不同,功能不同或者类型不同的源代码
另外分布特性还可以用具结构和接口
3.分布方法的特性和应用
分布方法允许将方法声明与方法实现代码分布于不同的文件中。与分部类类似,使用partial关键字定义分部方法。
1 partial void show(string str);2 partial void show(string str)3 {4 Console.WriteLine(str+"再见");5 }
分布方法不能具有访问修饰符或virtual、abstract、override new sealed 或者extern修饰符
partial修饰符只能出现在紧靠class struct interface void前面的位置
当分部方法没有实现代码时,C#编译器会在编译时删除其调用语句。
现在我们知道了分部方法有这种特性,但是它有什么用呢?
使用分部方法允许我们在一个普通方法中插入一个方法占位符,从而为编写可随时添加功能的方法提供支持。
分部方法不能有多个实现。
C#中分部类和分部方法的应用
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。