Java物件型別的判斷

2021-08-22 19:48:45 字數 1248 閱讀 1459

instanceof

判斷某個物件是否是某個類的例項或者某個類的子類的例項。它的判斷方式大概是這樣的:

publicboolean function(object obj, classcalzz) 

try catch (classcastexception e)

}

class.equals()

這種方式比較的型別,一定是本身才返回true,子類或者父類都返回false;

// b是a的子類,c是b的子類

b b = new b();

// false

system.out.println(b.getclass().equals(a.class));

// true

system.out.println(b.getclass().equals(b.class));

// false

system.out.println(b.getclass().equals(c.class));

ps:b.getclass().equals(a.class)等同於b.getclass() == a.class

class.isinstance()

這個方法跟instanceof完全等價。

// b是a的子類,c是b的子類

b b = new b();

// true

system.out.println(a.class.isinstance(b));

// true

system.out.println(b.class.isinstance(b));

// false

system.out.println(c.class.isinstance(b));

class.isassignablefrom

判斷某個類是否是另乙個類和其子類。

// b是a的子類,c是b的子類

// false

system.out.println(b.class.isassignablefrom(a.class));

// true

system.out.println(b.class.isassignablefrom(b.class));

// true

system.out.println(b.class.isassignablefrom(c.class));

Java基礎 判斷物件的型別

1 判斷物件的型別 instanceof 和 isinstance 或者直接將物件強轉給任意乙個型別,如果轉換成功,則可以確定,如果不成功,在異常提示中可以確定型別 public static void main string args catch classnotfoundexception in...

java中判斷Object物件型別

首先給大家分享乙個巨牛巨牛的人工智慧教程,是我無意中發現的。教程不僅零基礎,通俗易懂,而且非常風趣幽默,還時不時有內涵段子,像看 一樣,哈哈 我正在學習中,覺得太牛了,所以分享給大家!點這裡可以跳轉到教程 object param params.get i if param instanceof i...

判斷物件型別的方法

陣列物件 var arr 12 1 typeof 判斷 console.log typeof arr console.log typeof arr object typeof的乙個不好的地方就是它會把array還有使用者自定義函式都返回為object2 構造函式指標 判斷 console.log a...