void doWork(Car c){ // 매개변수로 new Car(), new FireEngine(), new Ambulance 가능
if (c instance FireEngine) { // 1. 형변환이 가능한지 확인
FireEngine fe = (FireEngine)c; // 2. 형변환
fe.water();
...
}
}
FireEngine fe = new FireEngine();
System.out.println(fe instanceof Object); // true
System.out.println(fe instanceof Car); // true
System.out.println(fe instanceof FireEngine); // true
Object obj = (Object)fe; // OK
Car c = (Car)fe; // OK
Q. 참조변수의 형변환은 왜 하는가?
Q. instanceof 연산자는 언제 사용하는가?