interface P{}
class A{}
class Demo{
public static void main(String arg[]){
A a1=null;
P p1=null;
a1=(A)p1; //legal
p1=(P)a1; //legal
}
}在这段代码中,接口P和类A a不是在同一个层次结构中,而是键入用于将接口转换为类和类到接口的语句是合法的。那为什么这是合法的?
发布于 2022-08-08 05:37:59
因为a1和p1的运行时类型可以是实现P的A的子类。
https://stackoverflow.com/questions/73273266
复制相似问题