instanceof 和 类型转换
instanceof:
instanceof是Java的一个保留关键字,先有继承关系,再有instanceof的使用左边是对象,右边是类,返回类型是Boolean类型。它的具体作用是测试左边的对象是否是右边类或者该类的子类创建的实例对象,是,则返回true,否则返回false。
System.out.println(a(对象) instanceof B (类));
类型转换:
格式:((类型).对象).方法
子类转换为父类,可能会丢失一些原本的方法。
新建一个Person父类
public class Person {
public void run (){
System.out.println("run121");
}
}
新建一个student类
public class Student extends Person{
public void go(){
System.out.println("go123");
}
}
新建一个主类:
public class Test {
public static void main(String[] args) {
// 高 低
Person x = new Student();
// student 将这个对象转换为Student类型,就可以使用Student类型的方法
// x.go(); 此时的x不能调用子类的go方法;
((Student)x).go();
}
}
运行结果: