Java-instanceof的用法
阿新 • • 發佈:2018-12-16
java 中的instanceof 運算子是用來在執行時指出物件是否是特定類的一個例項。instanceof通過返回一個布林值來指出,這個物件是否是這個特定類或者是它的子類的一個例項。 舉例:aa instanceof AA -->aa是不是AA的例項? 程式碼:
package hubotao_Util; public class Test { public static void main(String[] args) { String a = "123"; Long b = 0L; if (a instanceof String) { System.out.println("a is String"); } /* * if (a instanceof Long) { System.out.println("a is Long"); } //會報錯 * 如果編譯時可以判斷例項與被判斷型別無關就直接在編譯時報錯;不相容的兩個肯定不是對方的類物件,編譯器認為你在說廢話。 */ if (b instanceof Long) { System.out.println("b is Long"); } } }
在實際開發中有經常看到這個instanceof 的應用,所以記錄下來,但是為何需要頻繁判斷型別,有待深入瞭解。