首页 > 代码库 > 第八章 巅峰对决-走出误区

第八章 巅峰对决-走出误区

  今天是周日,昨天看了一天的《鹿鼎记》,荒废了一天,今天该花点时间学习了,不然整个人都不会好了。学习才是王道,不学习总感觉有一种负罪感。

  这一章主要讲的是一些名字相近和功能相似的一些概念和技术的对比学习,作者将带领我们走出其中的误区,让我们更好更深入的理解其中的原理。

  笔记

  一、特性和属性

  1、特性:公共语言运行时允许添加类似关键字的的描述声明,它对程序中的元素进行标注,可以用来在运行时描述代码,或者在程序运行时影响程序的行为。

     属性:提供了对私有字段的封装,利用get和set访问器达到可读可写的的操作。

  2、特性的目的就是为目标元素(类,方法,属性,模块,数据集,甚至是函数参数)加上附加信息,类似于注释,但是可以通过反射的方式获得。主要应用于序列化,编译器指令,设计模式等方面。

  3、我们可以按照自己的需要自定义特性,首先特性也属于类的范畴,所以只要遵守一些特性的规则,只要继承System.Attribute就可以完成自定义特性的声明。同时时候的过程中可以通过反射机制获取相应的特性。

  技术分享

  4、Attribute是.net特有的语言特性,在实际的开发过程中起到了很大的作用,深入的研究将有助于你写出简洁炫酷的代码。

  二、is和as

  技术分享  

  1、is模式:

    检查对象类型的兼容性,返回结果为true或者false;不会抛出异常;如果为null则返回false。

  技术分享

  2、as模式:

  技术分享

  

第八章 巅峰对决-走出误区