zoukankan      html  css  js  c++  java
  • C# is as

    if(obj is ClassA) //遍历类层次,看OBJ是不是ClassA类型
    {
        ClassA a=(ClassA) obj; //遍历类层次,看obj能否转换为ClassA,不成功则抛出异常
       ...
     }
    //作了两次类层次遍历

    ClassA a = obj as ClassA //不成功返回null,不会抛出异常
    If(a)
    {

    }
    //仅作了 一次类层次遍历

    using System.Runtime.InteropServices;
    using System;
    delegate string DTE(int x, string s);
    
    class MYTestX
    {
        class CO
        {
    
        }
        class CTEST : CO
        {
    
        }
        class CDT : CO
        {
    
        }
        static void Main(string[] args)
        {
    
            CTEST ot = new CTEST();
            CO odt = new CDT();
            ot = (CTEST)odt; //抛出异常
            ot = odt as CTEST;//不会抛出异常,ot = null
    
            CTEST ot1 = new CTEST();
            CDT odt1 = new CDT();
            ot1 = odt1; //编译错误,不能执行类型转换
     
            Console.WriteLine( ot == null ? "null" : ot.ToString());
    
        }
    
    }

          

        

      

      

      

      

      

      

      

      

      

      

      

  • 相关阅读:
    抓老鼠啊
    币值转换
    打印沙漏
    秋季学习总结
    第五周课程总结&试验报告(三)
    第四周课程总结&试验报告2
    实验报告一 &第三周课程总结
    Java第二周总结
    2019春总结作业
    第十六周
  • 原文地址:https://www.cnblogs.com/timeObjserver/p/5926195.html
Copyright © 2011-2022 走看看