首页 > 代码库 > 详解 instanceof 使用方法
详解 instanceof 使用方法
instanceof这个方法 很简单啦。就是判断左边的 是不是 右边 的 子类 。。
package Connection; class monkey { } class longarmMonkey extends monkey { } class Engineer extends longarmMonkey { } class engineerSon extends Engineer { } public class Instanceof { public static void main(String[] args) { // 我是谁 woIam(new engineerSon()); } private static void woIam(Object obj) { if (obj instanceof Object) { System.out.println("我是 祖宗"); } if (obj instanceof monkey) { System.out.println("我是猴子"); } if (obj instanceof longarmMonkey) { System.out.println("我是长臂猿"); } if (obj instanceof Engineer) { System.out.println("我是程序猿"); } if (obj instanceof engineerSon) { System.out.println("我是mini程序猿"); } } }
所以啊。如果 instanceof 左边的引用 的实例化对象 是右边 类 的子类 那也是返回true的。。
所以 不管你是 第几代玄孙 只要你有 祖先的血统 那么你就是 我的后代
public boolean equals(Object anObject) { // 是为了比较是否是同一个引用,是否都是指向同一个内存中的事例 if (this == anObject) { return true; } // 这里就用到了 instanceof 就是判断 穿进来的数据是不是 String类型的 对象 // 这里注意了 虽然 穿进来的是object类型的 但是只能是 String 类 或者是String类的父类才可以 为true if (anObject instanceof String) { String anotherString = (String)anObject;//向下转型 int n = value.length; if (n == anotherString.value.length) {//判断 长度是否一致 为了加快判断 char v1[] = value; char v2[] = anotherString.value; int i = 0; while (n-- != 0) { if (v1[i] != v2[i]) return false; i++; }//这个判断 的算法很赞啊。。判断两个相同字符串的每一位 是否相同 return true; } } return false; }
详解 instanceof 使用方法
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。