instanceof
可以用instanceof判断一个类是否实现了某个接口,也可以用它来判断一个实例对象是否属于一个类。
instanceof的语法格式如下:
对象 instanceof 类(或接口)
它的返回值是布尔型的,或真(true)或假(false)。
package test_instanceof;
class Person {
public void f1() {
System.out.println("Person.f1()");
}
public void f2() {
System.out.println("Person.f2()");
}
}
class Student extends Person {
@Override
public void f1() {
System.out.println("Student.f1()");
}
public void f3() {
System.out.println("Student.f3()");
}
}
public class Instanceof {
public static void main(String[] args) {
Person p = new Student();
if(p instanceof Student) { // 判断对象P是否是Student类的实例
// 如果是
Student s = (Student)p; // 将Person类的对象p转型成Sturdent类
s.f1();
}
else {
// 如果p不是Student类的实例
p.f2();
}
}
}
【结果】