Java instanof关键字详解
instanof和类型转换
- instanof主要用于判断引用类型之间的关系
- (类型转换)引用类型,判断一个对象是什么类型
package oop.demo03;
public class Student {
}
package oop.demo03;
public class High extends Student {
}
package oop.demo03;
public class Junior extends Student {
}
package oop;
import oop.demo03.High;
import oop.demo03.Junior;
import oop.demo03.Student;
public class Application {
public static void main(String[] args) {
Object object =new High();
System.out.println(object instanceof High);
System.out.println(object instanceof Student);
System.out.println(object instanceof Object);
System.out.println(object instanceof Junior);
System.out.println(object instanceof String);
System.out.println("==============");
Student student= new High();
System.out.println(student instanceof High);
System.out.println(student instanceof Student);
System.out.println(student instanceof Object);
System.out.println(student instanceof Junior);
}
}
package oop.demo03;
public class Student {
}
package oop.demo03;
public class High extends Student {
public int sum (int a,int b){
return a+b;
}
}
package oop;
import oop.demo03.High;
import oop.demo03.Student;
public class Application {
public static void main(String[] args) {
Student student=new High();
Student s1=new High();
High high=(High) s1;
high.sum(1,2);
System.out.println( high.sum(1,2));
}
}
- 类型转换的总结
- 父类引用指向子类的对象,需要引用子类的方法时,需要强转换
- 把子类转换为父类,向上转换
- 把父类转换为子类,向下转换,强制转换