Chciałbym wiedzieć, jak zachować się instanceof
operator w Javie.
interface C {}
class B {}
public class A {
public static void main(String args[]) {
B obj = new B();
System.out.println(obj instanceof A); //Gives compiler error
System.out.println(obj instanceof C); //Gives false as output
}
}
Dlaczego tak się dzieje? Nie ma związku między interface C
i class B
, ale daje fałsz, podczas gdy w przypadku obj instanceof A
daje błąd kompilatora?
Object obj = new B()
, kompiluje się.