zoukankan      html  css  js  c++  java
  • 类型安全性测试

                Object o1 = new Object();
                Object o2 
    = new B();
                Object o3 
    = new D();

                Object o4 
    = o3;
                B b1 
    = new B();
                B b2 
    = new D();

                D d1 
    = new D();
                
    //B b3 = new Object();      CTE
                
    //D d2 = new Object();      CTE

                B b4 
    = d1;
                
    //D d3 = b2;                CTE

                D d4 
    = (D)d1;
                D d5 
    = (D)b2;

                
    //D d6 = (D)b1;             RTE
                
    //B b5 = (B)o1;             RTE
                B b6 = (D)b2;

    这里 CTE表示编译期间错误,RTE表示运行期间错误。

    记住两点,涵盖以上所有类型转换:
    1.一个对象可以转为它的任何基类型,不需要任何额外语法,这是一种安全的隐式转换
    2.一个对象要显示转换成它的派生类型,这是强制的,因为运行期间可能会发生异常——RTE
  • 相关阅读:
    验证码缓存问题完美解决方案
    最近项目是跟框架有关的两个问题
    未与信任 SQL Server 连接相关联
    Get请求
    Post请求
    jQuery操作元素
    Dom对象和jQuery包装集
    XMLHttpRequest对象
    jQuery事件与事件对象
    处理数据集
  • 原文地址:https://www.cnblogs.com/Jax/p/844159.html
Copyright © 2011-2022 走看看