`
0428loveyu
  • 浏览: 30813 次
  • 性别: Icon_minigender_2
  • 来自: 西安
文章分类
社区版块
存档分类
最新评论

《深入理解 C# 第2版》 - 书摘精要

 
阅读更多
(P13) 在很大程度上,C# 2 更像是对 C# 1 的各种不足之处的修修补补,所以并没有一鸣惊人。而 C# 3 中几乎所有特性都是为了构建 LINQ,并且其结果也十分特别;

(P24)
为了让委托做某事,必须满足4个条件:
—— 声明委托类型;
—— 必须有一个方法包含了要执行的代码;
—— 必须创建一个委托实例;
—— 必须调用(invoke)委托实例;

(P30) 事件不是委托实例 —— 只是成对的 add/remove 方法 (类似于属性的 取值方法/赋值方法);

(P37)

数组类型是引用类型,即使元素类型是值类型(所以 int[] 仍是引用类型,即使 int 是值类型);

接口类型 (使用 interface 来声明) 是引用类型,但可由值类型实现;

(P38)

变量的值是在它声明时的位置存储的,局部变量的值总是存储在栈 (stack) 中,实例变量的值总是存储在实例本身存储的地方。引用类型实例 (对象) 总是存储在堆 (heap) 中,静态变量也是;

值类型不可以派生出其他类型;

(P40) 当你调用类型变量值的 GetType() 方法时总是伴随着装箱过程,因为它不能被重载。如果处理未装箱形式的变量,你应该已经知道了具体类型,因此使用 typeof 替代即可;

(P41)

引用类型的对象总是在堆上,值类型的值既可能在栈上,也可能在堆上,具体取决于上下文;

引用类型作为方法参数使用时,参数默认是以“值传递”方式来传递的 —— 但值本身是一个引用;

值类型的值会在需要引用类型的行为时被装箱;拆箱则是相反的过程;

(P47) 所谓“函数化”的编程风格,是指鼓励开发者更多地利用委托。匿名方法和Lambda表达式的引入,使委托变得易于创建和使用;

(P48) 从根本上说,泛型实现了类型和方法的“参数化”,就像在普通的方法调用中,经常要用参数来告诉它们使用什么值。同样,泛型类型和方法也可以让参数告诉它们使用什么类型;

(P52) 未绑定泛型类型是已构造类型的蓝图,已构造类型是实际的对象的蓝图,正是因为存在这个关系,所以才有“额外的抽象层”一说;

(P53) 其实 C# 语言规范已经说得很清楚,凡是不是“开放类型”的类型,就是“封闭类型”。凡是涉及类型参数的类型,就是“开放类型”;

(P55)

T 是在整个类的范围内使用的类型参数;

紧跟在方法名后面尖括号中的类型参数,是泛型方法的类型参数;

(P57)

不能因为一个方法是泛型的,就意味着它必须是泛型类型的一部分;

调用泛型方法时,使用和前面见到的一样的语法来指定参数类型;

(P58)

约束要放到泛型方法或泛型类型声明的末尾,并由上下文关键字 where 来引入;

引用类型约束表示成 T : class 必须是为类型参数指定的第一个约束;

构造函数类型约束表示成 T : new() 必须是所有类型参数的最后一个约束;

(P62)

每个类型参数的约束列表都要单独用一个 where 引入;

类型推断只适用于泛型方法,不适用于泛型类型;

(P74) 实现接口所规定的方法或属性时,附加接口名作为前缀,即称为“显式接口实现”;

(P78) 数组协变性 —— 引用类型的一个数组可以被视为它的基类型的一个数组,或者被视为它所实现的任何接口的一个数组;

(P141) 在常规的方法中,return 语句具有两个作用:第一,给调用者提供返回值;第二,终止方法的执行,在退出的时候执行合适的 finally 代码块;

(P194)

LINQ 的基本功能就是创建操作管道,以及这些操作需要的任何状态;

LINQ to Objects 处理的是同一个进程中的数据序列;

(P196)

Lambda 表达式最冗长的形式是 —— ( 显式类型参数列表 ) => {语句}

Lanbda 表达式快捷语法形式:
( 显式类型参数列表 ) => 表达式
( 隐式类型参数列表 ) => 表达式
参数名 => 表达式
分享到:
评论

相关推荐

    深入理解C#(第2版)

    《深入理解C#(第2版)》是C#领域不可多得的经典著作。作者Jon Skeet在详尽地展示C#各个知识点的同时,更注重从现象中挖掘本质。本书深入探索了C#的核心概念和经典特性,并将这些特性融入到代码中,让读者能够真正领会...

    深入理解C#(第2版)

    《深入理解C#(第2版)》是C#领域不可多得的经典著作。作者在详尽地展示C#各个知识点的同时,更注重从现象中挖掘本质。本书深入探索了C#的核心概念和经典特性,并将这些特性融入到代码中,让读者能够真正领会到C#之...

    深入理解C# 第3版.zip

    《深入理解C# 第3版》是一本专为C#开发者设计的深度学习教程,旨在帮助读者全面掌握C#编程语言的核心概念和技术。这本高清PDF版本提供了原版书籍的所有内容,确保读者能够获得最准确、最新的知识。下面将详细阐述这...

    深入理解C#_第3版.pdf

    《深入理解C#_第3版》是一本针对C#编程语言的深度学习教程,尤其适合Unity游戏开发的初学者。这本书旨在通过详尽的解释和实例,帮助读者从基础知识到高级特性的全面掌握C#语言。以下是该书可能涵盖的一些关键知识点...

    深入理解C#(第2版)-第1部分共2部分

    理解C#(第2版)-第1部分共2部分 出版时间:2012年1月1日 外文书名: C# in Depth Second Edition

    深入理解C#(第2版)pdf

    《深入理解C#(第2版)》是C#领域不可多得的经典著作。作者Jon Skeet在详尽地展示C#各个知识点的同时,更注重从现象中挖掘本质。本书深入探索了C#的核心概念和经典特性,并将这些特性融入到代码中,让读者能够真正领会...

    深入理解C# 高清PDF 带书签 附源码

    《深入理解C#》是一本深受程序员喜爱的书籍,尤其对于C#初学者来说,它提供了全面且深入的C#语言教程。这本书以其清晰的解释和实用的例子,帮助读者建立起坚实的C#编程基础。以下是对书中核心知识点的详细阐述: 1....

    深入理解C#+中文+第2版PDF 扫描高清版

    《深入理解C#(第2版)》是C#领域不可多得的经典著作。作者在详尽地展示C#各个知识点的同时,更注重从现象中挖掘本质。本书深入探索了C#的核心概念和经典特性,并将这些特性融入到代码中,让读者能够真正领会到C#之...

    C# in Depth, Second Edition[深入理解C#(第2版)].pdf

    《深入理解C#(第2版)》是C#领域不可多得的经典著作。作者Jon Skeet在详尽地展示C#各个知识点的同时,更注重从现象中挖掘本质。本书深入探索了C#的核心概念和经典特性,并将这些特性融入到代码中,让读者能够真正领会...

    深入理解C# 第3版 高清中文版有目录

    在第2版的基础上,《深入理解C#(第3版)》新增了C# 5的新特性——异步,并更新了随着技术的发展,已经不再适用的内容,确保整本书能达到读者期望的高标准。 如果你略微了解一点C#,就可无障碍地阅读《深入理解C#(第3...

    深入理解C# 中文第三版

    在第2版的基础上,《深入理解C#(第3版)》新增了C# 5的新特性——异步,并更新了随着技术的发展,已经不再适用的内容,确保整本书能达到读者期望的高标准。 如果你略微了解一点C#,就可无障碍地阅读《深入理解C#(第3...

    C# in Depth 2nd 深入理解C#(第2版)PDF扫描高清版

    《深入理解C#(第2版)》是 Jon Skeet 的经典之作,旨在为程序员提供对C#语言的深入解析,特别适合已经掌握了C#基础知识并希望深化理解的开发者。这本书详细介绍了C#的关键特性,涵盖了从基础语法到高级主题的各种...

    深入理解C#(第2版).pdf

    《深入理解C#(第2版)》一书旨在为读者提供全面且深入的C#编程语言知识,从基础语法到高级特性,从面向对象编程到泛型、异步编程等,涵盖了C#语言的各个方面。C#是一种现代、面向对象、类型安全的编程语言,由微软...

    [C#] 深入理解 C# 第3版 英文版

    [Manning Publications] 深入理解 C# 第3版 英文版 [Manning Publications] C# in Depth 3rd Edition E Book ☆ 出版信息:☆ [作者信息] Jon Skeet [出版机构] Manning Publications [出版日期] 2013年09月...

    深入理解C#(中文第三版)有书签非扫描可复制 + 随书源码

    《深入理解C#(中文第三版)》是C#编程领域的经典著作,旨在帮助开发者全面、深入地掌握C#这门强大的编程语言。本书不仅涵盖了C#的基础语法和特性,还深入探讨了高级主题,包括元数据、反射、类型安全、垃圾回收、...

    深入理解C#(C# in Depth, 2nd)

    《深入理解c#:第2版》是c# 领域不可多得的经典著作。作者在详尽地展示c# 各个知识点的同时,更注重从现象中挖掘本质。 经典中的经典哇 本人花钱在淘宝买的,版权问题我就没管了哈。但是本人也没敢独享,发出来有...

    深入理解C#(c# in depth)第三版 源码

    《深入理解C#》是C#编程领域...总之,《深入理解C#》第三版的源码是学习和提升C#编程技能的宝贵资源,结合书中的理论讲解,开发者可以系统地掌握C#语言,并将其应用到日常开发工作中,从而编写出更加优雅和高效的代码。

    深入理解C# 第2版

    深入理解C# 第2版(中文版),专注于C#语言从C#1.0到4.0的特性。建议想深入学习C#语言的同学去书店买实体书,支持正版。

    深入理解C#(第版)part2

    深入理解C#(第二版)中文版,C#中高级程序员必读。由于原pdf大于50M,在此分两个压缩包献上!

Global site tag (gtag.js) - Google Analytics