class A
{
boolean foo() {
return true;
}
}
为什么下面给出语法错误?
类型未定义方法
if(a instanceOf A && a.foo()) {
.....
}
这很好用-
if(a instanceOf A && ((A)a).foo()) {
.....
}
最佳答案
对于人类来说,由于 instanceof
检查,很明显 a
属于 A
类型。但编译器不会那样工作,因此您仍然需要将 a
转换为 A
。
关于java - 为什么我不能在第一个条件中使用类型检查变量作为第二个条件中的类型转换变量?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61082854/