7-26 instanceof演算子


  • 参照変数が変換可能かどうかを確認します.可能であればtrue
  • に戻ります
  • インチ変換前にinstanceofを使用して確認する必要があります:
  • void doWork(Car c){  // 매개변수로 new Car(), new FireEngine(), new Ambulance 가능
        if (c instance FireEngine) {	// 1. 형변환이 가능한지 확인
            FireEngine fe = (FireEngine)c;	// 2. 형변환
            fe.water();
            ...
        }
    }
  • 自分に対して、祖先に対してすべてtrue
  • を返します
    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演算子はいつ使いますか?
  • 参照変数を変換する前に、変換可能か否かを判定するとき、
  • .