java :instanceof用法

时间:2023-03-09 16:50:57
java :instanceof用法

Java中的instanceof是用来判断某个实例是不是某个类的实例。 
例如:A instanceof B (A为某个实例,B为某个类名) 
如果A为B的实例,则:(A instanceof B)==true 反之==false 
代码举例:

package JavaKEYWORDS;

class Bird{//父类

}
class BigBird extends Bird{//Bird的子类 }
class LittleBird extends Bird implements BirdFly{//Bird的子类加上BirdFly接口 }
interface BirdFly{ }
public class JavaKWinstanceof {
public static void main(String[] args) {
// TODO Auto-generated method stub
JavaKWinstanceof myThis=new JavaKWinstanceof();
Bird myBird=new Bird();
BigBird myBigBird=new BigBird();
LittleBird myLittleBird=new LittleBird();
//打印各实例与类之间的关系
prt(myThis instanceof JavaKWinstanceof);//打印结果:YES
prt(myBird instanceof Bird);//打印结果:YES
prt(myBigBird instanceof Bird);//打印结果:YES 子类实例出的对象也是父类的实例
prt(myBird instanceof BigBird);//打印结果:NO 父类实例出的对象不是子类的实例
prt(myLittleBird instanceof Bird);//打印结果:YES 子类加上其它接口后实例出的对象也是父类的实例
/*
* prt(myLittleBird instanceof BigBird);//编译报错 两个没有继承关系的类之间没有instanceof关系
* prt(1 instanceof int);//编译错误
*/
}
//判断及显示A是否为B的实例
static void prt(boolean A_is_instanceof_B){
if(A_is_instanceof_B){
System.out.println("YES");
}
else{
System.out.println("NO");
}
} }

java :instanceof用法java :instanceof用法

输出结果: 
java :instanceof用法