小编Yes*_*tha的帖子

类型转换时的不一致(错误:类型不兼容)

这个程序编译没有任何问题。


interface X{}
class A{
    public void mA(){
        System.out.println("mA of A");
    }
}
class Demo{
    public static void main(String args[]){
        X  ob=null;
        A a1=null;

        ob=(X) a1; //Legal
        a1=(A)ob; //Legal
    }
}
Run Code Online (Sandbox Code Playgroud)

但是下面的代码有问题?


interface X{}
final class A{
    public void mA(){
        System.out.println("mA of A");
    }
}
class Demo{
    public static void main(String args[]){
        X  ob=null;
        A a1=null;

        ob=(X) a1; //Illegal
        a1=(A)ob; //Illegal
    }
}

Run Code Online (Sandbox Code Playgroud)
Error:
 error: incompatible types: A cannot be converted to X
 ob=(X) a1; //Illegal
            ^
1 error
Compilation …
Run Code Online (Sandbox Code Playgroud)

java methods compiler-errors interface class

1
推荐指数
1
解决办法
88
查看次数

标签 统计

class ×1

compiler-errors ×1

interface ×1

java ×1

methods ×1