在程序中,进行类型转换是常见的事。那么在C#中支持以前语言的类型转换方法,即用类型名进行强行转换,例如:
object objTest = new NewType();
NewType newValue = (NewType)objTest;
但是这样转换,有个严重的问题,就是在把objTest强转换成NewType类型对象的时候,这个过程是不安全的,因此需要用try-catch语句来进行保护。这样一来,比较安全的代码方式应该如下所示。
object objTest = new NewType();
NewType newValue = null;
try
{
newValue = (NewType)objTest;
}
catch( Exception err )
{
MessageBox.Show( err.Message );
}
但是如上的写法在C#中已经属于过时的写法,而且也属于比较低效的写法。在C#中比较高效而且安全的写法,应该用as