Object c = new Carro();
boolean b1 = c instanceof Carro; // true
boolean b2 = c instanceof Moto; // false
Acho que fechei sem querer o outro tópico como resolvido.
Bom, minha dúvida é porque o código acima compila e o seguinte não?
String s = "a";
boolean b = s instanceof java.util.List; // não compila