码迷,mamicode.com
首页 > Web开发 > 详细

.NET 扩展方法(Extention Method)的要点

时间:2014-05-19 15:57:25      阅读:309      评论:0      收藏:0      [点我收藏+]

标签:c   ext   http   a   com   使用   

扩展方法Extention Method的主要介绍在:http://msdn.microsoft.com/zh-cn/library/bb383977(v=vs.100).aspx

扩展方法能够向已存在的类型(这时称为Extended Type)添加方法,而无需修改该类型。

关于扩展方法的几个要点是:

  1. 扩展方法被定义为“静态方法(static method)”,但是调用时使用的是“实例方法(instance method)”的语法(即在对象而非类后面写"."调用)的语法;
  2. “扩展方法被定义为静态方法”的含义是:扩展方法一般被定义为静态类的静态方法;这个静态方法的第一个参数指定本方法所适用的类型(称为Extended Type),该参数以this修饰符为前缀(一个静态类中是可以为多个Extended Type定义扩展方法的吧?);从这个实现上来看,扩展方法是无法访问Extended Type对象的实例成员的;
  3. 仅当使用using指令将包含扩展方法类的命名空间导入源代码后,才可以使用该扩展方法;
  4. 扩展方法的编译绑定方法决定了:(1)扩展方法不能被重写;(2)扩展方法与实例方法签名相同时,扩展方法永远不会被调用;
  5. 基于以上的4和其他理由,应该在必要时才使用扩展方法扩展已存在的类型(应该优先使用派生已存在类型的新类型来实现扩展的目的);

.NET 扩展方法(Extention Method)的要点,布布扣,bubuko.com

.NET 扩展方法(Extention Method)的要点

标签:c   ext   http   a   com   使用   

原文地址:http://www.cnblogs.com/leegsh/p/3508539.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!