当前位置:编程学习 > JAVA >>

java新手求教 instanceof 的用法。

求教了 --------------------编程问答-------------------- 楼主自己google了没? --------------------编程问答-------------------- instanceof 就是判断一个引用是否为该对象的引用。
例如:
Animal a= new Bird();
System.out.println( a instanceof Bird); 
判断a是否为Bird对象的引用   返回boolean   API里写的很清楚。 --------------------编程问答-------------------- 写写代码自己测试一下。 --------------------编程问答--------------------
interface Authless;

public class HogeAction extends ActionSupport implements Authless {


if (action instanceof Authless) {
 //就不必认证了。

}
--------------------编程问答-------------------- 判断前面操作数的对象是否是后面的类、或者其子类、实现类的实例  是就true 否则就false


要注意是 前面操作数的编译时类型要么与后面类相同,要么是后面类父类 否则 会编译错误 --------------------编程问答-------------------- 这个就是判断一个对象,是不是属于一个类的引用。比如给你一个对象   tiger,
(tiger instanceof Annimal)
也就是说老虎是不是动物,是的话,就返回 true,不是花,就返回false --------------------编程问答-------------------- eclipse里去看下equals的源代码 --------------------编程问答--------------------
引用 5 楼 tf949627780 的回复:
判断前面操作数的对象是否是后面的类、或者其子类、实现类的实例 是就true 否则就false


要注意是 前面操作数的编译时类型要么与后面类相同,要么是后面类父类 否则 会编译错误


要注意是 前面操作数的编译时类型要么与后面类相同,要么是后面类父类 否则 会编译错误
感觉5L第二句有点说错了 --------------------编程问答-------------------- 表示那个对象是不是某个类的实例 --------------------编程问答--------------------
引用 2 楼 followme_1987 的回复:
instanceof 就是判断一个引用是否为该对象的引用。
例如:
Animal a= new Bird();
System.out.println( a instanceof Bird); 
判断a是否为Bird对象的引用   返回boolean   API里写的很清楚。


感觉这个说的有点欠妥。

应该是。

左面引用所指的对象,是否是右面类的实例。
补充:Java ,  Java SE
CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,