class A {
}
class B extends A {
public static void main(String args[]) {
B b = new A();
}
}
为什么这会引发编译时错误?为了抑制编译时错误,我们可以执行
B b=(B)new A();
,但是也会通过ClassCastException
进行。 最佳答案
B是-A A,但A不是B。
您只能将对象分配给自身或其超类的实例,而不是其子类。
关于java - 为什么这会引发编译时错误? Java中类型转换的规则?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/25724531/