相关疑难解决方法(0)

Java Casting接口到类

public class InterfaceCasting {

    private static class A{}

    public static void main(String[] args) {
        A a = new A();
        Serializable serializable = new Serializable(){};
        a = (A)serializable;
    }

}
Run Code Online (Sandbox Code Playgroud)

编译成功但运行时异常

Exception in thread "main" java.lang.ClassCastException: InterfaceCasting$1 cannot be cast to InterfaceCasting$A
Run Code Online (Sandbox Code Playgroud)

为什么汇编成功?编译器必须知道serialiazable不是A?

java casting

18
推荐指数
3
解决办法
3万
查看次数

标签 统计

casting ×1

java ×1