扩展方法/对象与集合初始化器
扩展方法:
静态类包含的方法必须都是静态方法。
扩展方法允许我们在不改变原有类的情况下,扩展现有类型中的实例方法,是一种编译时的技术。
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
扩展方法/对象与集合初始化器相关推荐
- [From 10.1~10.5] 对象和集合初始化器(C#语法糖系列)
经常要构造一个对象并设置对象的一些公众属性(或字段). 1.为了简化这个常见的编程模式,C#语言支持一种特殊的对象初始化语法.下面是一个例子: Employee e = new Employee(){ ...
- C#笔记13 匿名类型、集合初始化器、扩展方法和查询表达式
文章目录 匿名类型 new{...}和隐式类型var 集合初始化器和对象初始化器 扩展方法 案例引出扩展方法的意义 扩展方法的使用 做Enumerable的扩展方法 扩展方法使用 标准查询运算符 Li ...
- .NET 中创建支持集合初始化器的类型
对象初始化器和集合初始化器只是语法糖,但是能让你的代码看起来更加清晰.至少能让对象初始化的代码和其他业务执行的代码分开,可读性会好一些. 本文将编写一个类型,可以使用集合初始化器构造这个类型.不只是添 ...
- lambda 对象初始化器 集合初始化器
- 第七节:语法总结(1)(自动属性、out参数、对象初始化器、var和dynamic等)
一. 语法糖简介 语法糖也译为糖衣语法,是由英国计算机科学家彼得·约翰·兰达(Peter J. Landin)发明的一个术语,指计算机语言中添加的某种语法,这种语法对语言的功能并没有影响,但是更方 ...
- Kotlin学习笔记 第四章 解构声明 集合集合的扩展方法 Range 异常 Throw关键字
参考链接 Kotlin官方文档 https://kotlinlang.org/docs/home.html 中文网站 https://www.kotlincn.net/docs/reference/p ...
- C#学习笔记四: C#3.0自动属性匿名属性及扩展方法
前言 这一章算是看这本书最大的收获了, Lambda表达式让人用着屡试不爽, C#3.0可谓颠覆了我们的代码编写风格. 因为Lambda所需篇幅挺大, 所以先总结C#3.0智能编译器给我们带来的诸多好 ...
- .NET中那些所谓的新语法之二:匿名类、匿名方法与扩展方法
开篇:在上一篇中,我们了解了自动属性.隐式类型.自动初始化器等所谓的新语法,这一篇我们继续征程,看看匿名类.匿名方法以及常用的扩展方法.虽然,都是很常见的东西,但是未必我们都明白其中蕴含的奥妙.所以, ...
- Linq之隐式类型、自动属性、初始化器、匿名类
目录 写在前面 系列文章 隐式类型 自动属性 初始化器 匿名类 总结 写在前面 上篇文章是本系列的小插曲,也是在项目中遇到,觉得有必要总结一下,就顺手写在了博客中,也希望能帮到一些朋友.本文将继续介绍 ...
- dotNet中初始化器的使用
dotNet中初始化器的使用 2013年12月7日 13:27 有两类初始化器: 对象初始化器和集合初始化器 比如现在有一个User类: Public class User { public in ...
最新文章
- 云计算时代的数据库运行
- 网络新手ip隐藏器_动态IP代理的用途
- 【Boost】boost库中thread多线程详解5——谈谈线程中断
- Linux就应该这么学第七课-文件的特殊权限
- Codeforces Round #603 (Div. 2) E. Editor 线段树维护括号序列
- [错误记录] --- clickhouse报错Decimal value is too small
- matlab变参传函,什么是传递函数的增益
- java建议:避免使用终结方法
- spark算子的分类
- 貌似必须背下的一组数据。 C语言中的优先级顺序
- Win10安装Ruby
- window 安装gradle步骤
- 9种常见的HR数据分析方法
- FLINK任务重启 Streaming File Sink落地hdfs的中间状态In-progress格式文件处理方案
- Linux文件补全功能,Linux系统自动补全命令有哪些
- python测量镜头到目标距离,如果从相机(校准)到我的物体的距离是固定的,我如何测量物体的宽度?...
- 技术交流微信群欢迎小伙伴前来交流
- Truffle Unbox failed问题解决方法
- opencv 内存数据转matlab,OpenCV:IplImage, CvMat, Mat 相互转换
- Unity应用自带UGUI与EPPlus库制作自制Excel(.xlsx)操作程序
热门文章
- iphone iPhone开发中如何将制作图片放大缩小代码实现案例
- Windows Server 2003群集配置手记(转载)
- python2.3嵌套if结构:
- anaconda安装第三方库两种方式
- xamarin.forms 绑定页面里指定元素的某个属性值
- ssm整合之配置applicationContext-service.xml
- RAC性能分析 - gc buffer busy acquire 等待事件
- 著名设计师的标志(Logo)设计观
- Spring Boot源码分析
- jquery获取父级元素、子级元素、兄弟元素