代码改变世界

.Net笔记(一)is和 as

2013-04-18 14:03  残月星辰  阅读(396)  评论(0编辑  收藏  举报

1.介绍

     类型安全是.net设计之初重点考虑的内容之一,对于程序设计者来说,完全把握系统数据的类型安全,经常力不从心问题。

现在,这一切已经在微软的设计框架为你解决。在.NET中,一切类型都必须集成来自System.Object类型,因此我们可以很容易的获得对象的准确类型,

方法是 GetType()方法。

2.转换概念

类型转换包括显示转换和隐式转换,在,Net类型转换的基本规则:

任何类型都可以安全的转换为其基类类型,可以由隐式转换来完成;

任何类型转换为其派生类型时,必须进行显示转换,转换规则是:(类型名)对象名;

使用GetType可以取得任何对象的精确类型;

基本类型可以使用covert类实现转换;

除了string以外的其他类型都是Parse方法,用于将字符串类型转换为对应的基本类型;

值类型和引用类型的转换机制称为装箱和拆箱;

3.实例

is/as操作符,是C#用于类型转换的,提供了对类型兼容性的判断,从而使得类型转换控制在安全范畴,提供了灵活的类型转换控制

 

is 规则:

检查对象类型  

检查对象类型的兼容性,并返回结果,true或者false;

不会抛出异常

如果对象为NUll ,则返回值永远为false;

as规则:

检查对象类型的兼容性,并返回结果,如果不兼容就返回null;

不会抛出异常;

如果结果判断为空,则强制执行类型转换将抛出NullReferenceException异常