部分类

转载 2007年09月12日 16:02:00
部分类是.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
 

本部分讲解如何删除类

  • 2008年12月10日 22:06
  • 2.35MB
  • 下载

探索推荐引擎内部的秘密,第 3 部分: 深入推荐引擎相关算法 - 聚类

转载链接:http://www.ibm.com/developerworks/cn/web/1103_zhaoct_recommstudy3/index.html   简介: 智能推荐大都基于海量...

c++中 的经典的部分 类

  • 2011年06月12日 09:34
  • 1.94MB
  • 下载

Java Math 类中的新功能,第 1 部分: 实数

有时候您会对一个类熟悉到忘记了它的存在。如果您能够写出 java.lang.Foo 的文档,那么 Eclipse 将帮助您自动完成所需的函数,您无需阅读它的 Javadoc。例如,我使用 java.l...
  • look85
  • look85
  • 2012年09月25日 16:22
  • 2364

C#中Queue<T>类的使用以及部分方法的源码分析

Queue类 表示对象的先进先出集合。 队列在按接收顺序存储消息方面非常有用,以便于进行顺序处理。 存储在 Queue, 中的对象在一端插入,从另一端移除。 Queue 的容量是 Q...

2014年互联网IT公司产品、技术类人员工资待遇汇总 2015部分补充

以下均为应届毕业生的起薪待遇: 一、民企 1. 百度 13k*14.6,special 14~17k*14.6 开发类 13K*14.6 (2014) 测试类、前端类 12K*14.6 (2014) ...

黑马程序员-关于Collections类中fill方法的一个拓展练习(实现将list中部分元素替换)

今天学习有关Collections类中fill方法,毕老师布置作业,自己第一个方法,实现将list中部分元素替换。 我通过阅读fill方法源码,修改代码如下:import java.util.Ar...

Hibernate查询部分字段并封装到指定类中(HQL)

Hibernate查询部分字段并封装到指定类中(HQL) 在实际项目开发中,我们使用Hibernate框架很容易的来关联实体与实体之间的关系,但是缺点就是关联关系太紧密导致查询不太灵活,如果使用sql...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:部分类
举报原因:
原因补充:

(最多只允许输入30个字)