나는 최근에 내 다음 코드에 대한 이상한 컴파일 오류를 건너 왔어요 :instanceof를 던지는 호환되지 않는 유형의
class A {
}
class B extends A {
}
class Example {
}
class Demo {
public static void main (String args[]){
B b = new B();
if(b instanceof Example) {
System.out.println("Yes it is");
}
}
}
가 지금은 B
및 Example
호환되지 않는 피연산자을 나타내는 내 조건에 컴파일 오류를 얻고있다. 나는 잠시 동안 검색 한 결과, 오른손 피연산자를 가져 오지 않으면 이클립스 환경에 그러한 오류가 있음을 발견했다. 하지만 제 경우에는 모든 클래스가 같은 파일에 있습니다. 그래서 문제를 파악할 수 없습니다. instanceof
은 계층 구조에서만 작동하며 잘못된 예제를 시도한 예입니까?
B와 Example간에 상속 링크가 없습니다. 예외입니다. – Devendra
@Dev 예외가 런타임에 throw됩니다 - 예외는 아니며 컴파일 오류입니다 – Mureinik
예 컴파일러 오류가 발생합니다. – Devendra