当前位置:  编程技术>.net/c#/asp.net

C#中is和as用法实例分析

    来源: 互联网  发布时间:2014-11-02

    本文导语:  本文实例讲述了C#中is和as的用法,对加深is与as用法的理解有一定的帮助借鉴作用。具体如下: 现来看个例子: public class User { } public class Group { } class Program { static void Main(string[] args) { Object oUser = new User(); ...

本文实例讲述了C#中is和as的用法,对加深is与as用法的理解有一定的帮助借鉴作用。具体如下:

现来看个例子:

public class User
{
}
public class Group
{
}
class Program
{
    static void Main(string[] args)
    {
      Object oUser = new User();
      Object user = (Group)oUser;
    }
}

这样会报错(InvalidCastException),由于C#安全机制,它会去判断一次。我们这里做了非法的转换。

Is做判断:is说判断对象是不是你要的那个类型(这里说User)

修改后的示例如下:

class Program
{
    static void Main(string[] args)
    {
      Object obj = new User();
      if (obj is User)
      {
        User user = (User)obj;
      }
    }
}

这样的话,我们在obj is User这里做了一次判断,我们刚才说了,(User)obj这样的操作(强制转换)编译器还会做一次操作,这样就有性能上面的消耗。来看看AS。

AS操作:如果说改对象就转换,不是则返回null.

class Program
{
    static void Main(string[] args)
    {

      Object obj = new User();

      User user = obj as User;
      if(user==null)
      {
        // handle error
        //....
      }
    }
}

注:个人比较喜欢用As,简化了操作也提高了性能,做一个NULL判断,直接处理这种异常也说很方便。

希望本文所述方法对大家的C#程序设计能有一定的帮助与借鉴价值。


    
 
 

您可能感兴趣的文章:

  • C#调用SQL语句时乘号的用法
  • c#中switch case的用法实例解析
  • C#各种数组的用法实例演示
  • 实例学习C#中Ref,Out的用法
  • C#中out保留字用法实例分析
  • C#四舍五入(函数)用法实例
  • 实例学习C#中is与As运算符号的用法
  • C#中委托的基本用法总结
  • c#中oracle to_date函数用法举例
  • C# List<T> Contains<T>()的用法小结
  • C#中定时器控件Timer的简单用法
  • c# params参数用法 可变数目参数params实例
  • c#中var关键字用法浅谈
  • C#简单的向量用法实例教程
  • C#中this指针的用法示例
  • C#中Trim()、TrimStart()、TrimEnd()的用法介绍
  • C# List中FindAll用法的一些简单示例
  • C#中timer类的用法总结
  • C#中哈希表(Hashtable)的介绍及简单用法
  • C#中sizeof的用法实例分析
  • java之this关键字用法实例分析
  • JSP forward用法分析实例代码分析
  • Android提高之SurfaceView的基本用法实例分析
  • Android入门之AlertDialog用法实例分析
  • Jackson的用法实例分析
  • C++中引用(&)的用法与应用实例分析
  •  
    本站(WWW.)旨在分享和传播互联网科技相关的资讯和技术,将尽最大努力为读者提供更好的信息聚合和浏览方式。
    本站(WWW.)站内文章除注明原创外,均为转载、整理或搜集自网络。欢迎任何形式的转载,转载请注明出处。












  • 相关文章推荐
  • c++模板(template)常见用法代码实例
  • getdate()函数的用法实例
  • java之super关键字用法实例解析
  • python中enumerate的用法实例解析
  • ShellExecute函数用法的实例代码
  • Jackson的用法实例分析 iis7站长之家
  • SQL cursor用法实例
  • Marquee高级用法实例代码
  • jQuery setTimeout用法总结(实例)
  • Python continue语句用法实例
  • Python中__call__用法实例
  • Python中apply函数的用法实例教程
  • C语言变量类型与输出控制用法实例教程
  • sqlserver 存储过程中If Else的用法实例
  • 用实例说明python的*args和**kwargs用法
  • PHP面向对象程序设计之类常量用法实例
  • sql语句中isnull函数用法 实例教程
  • Android入门之LinearLayout、AbsoluteLayout的用法实例讲解
  • python的类变量和成员变量用法实例教程
  • mysql alter语句用法实例
  • DevExpress之SplashScreen用法实例
  • Linux下chmod命令详细介绍及用法举例
  • 请问:哪里有java所有类包的介绍,用法,及所有类的用途,用法,例子等的书或帮助的下载?
  • Linux c++虚函数(virtual function)简单用法示例代码
  • SQL事务用法begin tran,commit tran和rollback tran的用法
  • PHP的substr() 函数用法
  • oracle中lpad函数的用法详解
  • boost库lexical_cast不同用法代码参考
  • DevExpress SplitContainerControl用法总结
  • Python异常模块traceback用法举例
  • 哪里有Runtime.exec()关于各钟command的用法?


  • 站内导航:


    特别声明:169IT网站部分信息来自互联网,如果侵犯您的权利,请及时告知,本站将立即删除!

    ©2012-2021,,E-mail:www_#163.com(请将#改为@)

    浙ICP备11055608号-3