部分类
来源:互联网 发布:网络旁路监听技术 编辑:程序博客网 时间:2024/05/01 18:10
部分类是.NET Framework 2.0中的一个新特性,可以用于C#和Visual Basic 8.0。这些类可以把一个类放在多个类文件中,以后在编译时再把它们合并为一个类。
部分类是ASP.NET使新后台编码模型非常简单的关键。在ASP.NET 1.0/1.1中,后台编码模型包含许多代码,它们都标记为机器生成的代码(由设计器生成),并隐藏在#REGION标记中。现在,ASP.NET 2.0的后台编码文件看起来简单多了。程序清单A-14是一个新后台编码模型的例子,它使用了部分类。
程序清单A-14 使用部分类的新后台编码模型
VB
Imports Microsoft.VisualBasic
Namespace ASP
Partial Class TestPage
Sub Button1_Click(ByVal sender As Object, ByVal e As System.EventArgs)
Label1.Text = "Hello " & Textbox1.Text
End Sub
End Class
End Namespace
C#
using System;
namespace ASP {
public partial class TestPage
{
void Button1_Click (object sender, System.EventArgs e)
{
Label1.Text = "Hello " + Textbox1.Text;
}
}
}
这个后台编码文件包含一个简单的按钮单击事件。如果把它与ASP.NET 1.0/1.1的后台编码文件中的设计器代码相比较,注意两者有一个很大的区别。原来的后台编码文件中的代码有什么变化吗?这些代码还在,但现在由于使用了部分类,所有必要的但不改动的代码都放在另一个类文件中。在编译时,程序清单A-14中的类文件会与其他类文件合并起来。结果说明,ASP.NET 2.0中的后台编码文件只需由实际使用的对象组成。
对于要与其他类合并的任何类,在Visual Basic中,部分类使用Partial关键字创建,而在C#中,部分类使用partial关键字创建。对于要与原始类合并的类,应把Partial关键字放在Class关键字之前。在ASP.NET 2.0中,除了每个后台编码页面可以使用部分类之外,还可以在自己的类文件中使用部分类。可以使用程序清单A-15和A-16中的过程,把两个或多个类作为一个类的不同部分。
程序清单A-15 第一个类
VB
Public Class Calculator
Public Function Add(ByVal a As Integer, ByVal b As Integer)
Return (a + b)
End Function
End Class
C#
public class Calculator
{
public int Add(int a, int b)
{
return a + b;
}
}
程序清单A-16列出了使用部分类功能的第二个类:
程序清单A-16 第二个类
VB
Partial Class Calculator
Public Function Subtract(ByVal a As Integer, ByVal b As Integer)
Return (a - b)
End Function
End Class
C#
public partial class Calculator
{
public int Subtract(int a, int b)
{
return a - b;
}
}
在编译这两个类文件时,它们会显示为一个对象。程序清单A-15中的第一个类构建为一个正常的类,而组成该类的其他类使用新的Partial关键字。使用编译好的Calculator类的用户看不出区别。在Calculator类的用户创建这个类的实例后,这个实例有Add和Subtract方法。如图A-1所示。
图 A-1
- 部分类
- 部分类
- 部分类
- C#中的部分类和部分方法
- 部分类、匿名类
- 部分类/静态类
- 密封类,部分类
- 部分类 partial class
- Ams 部分类图
- openfire部分类说明
- partial部分类
- C#部分类
- Bootstrap 部分类名
- python类部分概念
- 伪类部分选择器
- C#---部分类、密封类
- 第三部分 类和结构---------------
- 第四部分 DWRServlet类分析
- 天堂里的沙漠
- Java开发环境配置
- 用AS3如何清空容器下所有子显示对象
- Unix/Linux下C/C++开发技术概览
- 配置Subversion Apache tomcat
- 部分类
- Darwing Streaming Server的安装
- Oracle中取得十六進制月份
- 相互依赖声明(Declaration of Interdependenc)
- 《Programming Erlang》学习笔记1——数据类型
- 非登录使用网络应用系统
- C#中byte[]与string的转换
- Linux用户(User)和用户组管理概述(一)
- JSP + AJAX 打造簡單聊天室