当我尝试Car使用Colorable接口指向类的对象而不使用类car中的implements时,我没有显示任何编译错误(虽然它显示运行时错误)(问题1)并且当我尝试对类不执行同样的操作时车辆类和试图用汽车类指向汽车的对象它立即显示编译错误.为什么会这样?
问题1:
interface Colorable {}
class Vehicle {}
class Car extends Vehicle {}
public class Tester {
public static void main(String[] args) {
Car c=new Car();
Vehicle a = (Vehicle)c;
Colorable i = (Colorable)c;
System.out.println("Successful");
}
}
Run Code Online (Sandbox Code Playgroud)
问题2:
interface Colorable {}
class Vehicle {}
class Car {}
public class Tester {
public static void main(String[] args) {
Car c=new Car();
Vehicle a = (Vehicle)c;
Colorable i = (Colorable)c;
System.out.println("Successful");
}
}
Run Code Online (Sandbox Code Playgroud)