我得到一个ClassCastException,但我的源类型对象是超类型,而转换操作符是子类型

时间:2017-02-21 20:53:29

标签: java

当我执行下面的代码时,为什么我得到ClassCastException?

class Test extends Test3 {
    public static void main(String[] args) {
        Test3 t3 = new Test3();
        Test t = (Test) t3;
        System.out.print("hello");
    }
}

1 个答案:

答案 0 :(得分:0)

使用原始数据类型以这种方式进行强制转换。但是如果你尝试使用String作为[class],你就不能在没有类似int Stringvariable = Integer.parseInt(Stringvariable)的方法的情况下将它从String转换为Integer或{{1将Integer转换为String。

String intvariable = String.valueof(intvariable)是Integer类中的一个方法。 parseInt(Stringvariable)是String类中的一个方法。如果要建立任何转换关系,请通过方法进行。