扩展方法

静态类包含的方法必须都是静态方法。

扩展方法允许我们在不改变原有类的情况下,扩展现有类型中的实例方法,是一种编译时的技术。

publicstaticclassMyClass //必须是静态类

{

publicstaticvoid getdata(thisstring s)  //静态方法,this不可少

{

Console.WriteLine(s.Length);

}

}

classProgram

{

staticvoid Main(string[] args)

{

string str = "rxm";

str.getdata(); //实例方法的调用!

Console.Read();

}

}

对象与集合初始化器:

publicclassPoint

{

int x, y;

publicint X

{

get { return x; }

set { x = value; }

}

publicint Y

{

get { return y; }

set { y = value; }

}

}

classProgram

{

staticvoid Main(string[] args)

{

Point p = newPoint();

p.X = 9;

p.Y = 89;

Point p1 = newPoint { X = 9, Y = 89 };  //对象初始化器

List<int> nums = newList<int>();

nums.Add(3);

nums.Add(4);

List<int> nums1 = newList<int> { 3, 4 };  //集合初始化器

Console.WriteLine(p.Y==p1.Y);

Console.WriteLine(nums[1]==nums1[1]);

Console.Read();

}

}

转载于:https://www.cnblogs.com/hometown/p/3204235.html

扩展方法/对象与集合初始化器相关推荐

  1. [From 10.1~10.5] 对象和集合初始化器(C#语法糖系列)

    经常要构造一个对象并设置对象的一些公众属性(或字段). 1.为了简化这个常见的编程模式,C#语言支持一种特殊的对象初始化语法.下面是一个例子: Employee e = new Employee(){ ...

  2. C#笔记13 匿名类型、集合初始化器、扩展方法和查询表达式

    文章目录 匿名类型 new{...}和隐式类型var 集合初始化器和对象初始化器 扩展方法 案例引出扩展方法的意义 扩展方法的使用 做Enumerable的扩展方法 扩展方法使用 标准查询运算符 Li ...

  3. .NET 中创建支持集合初始化器的类型

    对象初始化器和集合初始化器只是语法糖,但是能让你的代码看起来更加清晰.至少能让对象初始化的代码和其他业务执行的代码分开,可读性会好一些. 本文将编写一个类型,可以使用集合初始化器构造这个类型.不只是添 ...

  4. lambda 对象初始化器 集合初始化器

  5. 第七节:语法总结(1)(自动属性、out参数、对象初始化器、var和dynamic等)

    一. 语法糖简介   语法糖也译为糖衣语法,是由英国计算机科学家彼得·约翰·兰达(Peter J. Landin)发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方 ...

  6. Kotlin学习笔记 第四章 解构声明 集合集合的扩展方法 Range 异常 Throw关键字

    参考链接 Kotlin官方文档 https://kotlinlang.org/docs/home.html 中文网站 https://www.kotlincn.net/docs/reference/p ...

  7. C#学习笔记四: C#3.0自动属性匿名属性及扩展方法

    前言 这一章算是看这本书最大的收获了, Lambda表达式让人用着屡试不爽, C#3.0可谓颠覆了我们的代码编写风格. 因为Lambda所需篇幅挺大, 所以先总结C#3.0智能编译器给我们带来的诸多好 ...

  8. .NET中那些所谓的新语法之二:匿名类、匿名方法与扩展方法

    开篇:在上一篇中,我们了解了自动属性.隐式类型.自动初始化器等所谓的新语法,这一篇我们继续征程,看看匿名类.匿名方法以及常用的扩展方法.虽然,都是很常见的东西,但是未必我们都明白其中蕴含的奥妙.所以, ...

  9. Linq之隐式类型、自动属性、初始化器、匿名类

    目录 写在前面 系列文章 隐式类型 自动属性 初始化器 匿名类 总结 写在前面 上篇文章是本系列的小插曲,也是在项目中遇到,觉得有必要总结一下,就顺手写在了博客中,也希望能帮到一些朋友.本文将继续介绍 ...

  10. dotNet中初始化器的使用

    dotNet中初始化器的使用 2013年12月7日 13:27 有两类初始化器: 对象初始化器和集合初始化器 比如现在有一个User类: Public   class User { public in ...

最新文章

  1. 云计算时代的数据库运行
  2. 网络新手ip隐藏器_动态IP代理的用途
  3. 【Boost】boost库中thread多线程详解5——谈谈线程中断
  4. Linux就应该这么学第七课-文件的特殊权限
  5. Codeforces Round #603 (Div. 2) E. Editor 线段树维护括号序列
  6. [错误记录] --- clickhouse报错Decimal value is too small
  7. matlab变参传函,什么是传递函数的增益
  8. java建议:避免使用终结方法
  9. spark算子的分类
  10. 貌似必须背下的一组数据。 C语言中的优先级顺序
  11. Win10安装Ruby
  12. window 安装gradle步骤
  13. 9种常见的HR数据分析方法
  14. FLINK任务重启 Streaming File Sink落地hdfs的中间状态In-progress格式文件处理方案
  15. Linux文件补全功能,Linux系统自动补全命令有哪些
  16. python测量镜头到目标距离,如果从相机(校准)到我的物体的距离是固定的,我如何测量物体的宽度?...
  17. 技术交流微信群欢迎小伙伴前来交流
  18. Truffle Unbox failed问题解决方法
  19. opencv 内存数据转matlab,OpenCV:IplImage, CvMat, Mat 相互转换
  20. Unity应用自带UGUI与EPPlus库制作自制Excel(.xlsx)操作程序

热门文章

  1. iphone iPhone开发中如何将制作图片放大缩小代码实现案例
  2. Windows Server 2003群集配置手记(转载)
  3. python2.3嵌套if结构:
  4. anaconda安装第三方库两种方式
  5. xamarin.forms 绑定页面里指定元素的某个属性值
  6. ssm整合之配置applicationContext-service.xml
  7. RAC性能分析 - gc buffer busy acquire 等待事件
  8. 著名设计师的标志(Logo)设计观
  9. Spring Boot源码分析
  10. jquery获取父级元素、子级元素、兄弟元素