在此示例中,我們將學習使用getClass()方法,instanceof運算符 和 isInstance()方法確定Java中對象的類。
要理解此示例,您應該了解以下Java編程主題:
class Test1 { // first class } class Test2 { // second class } class Main { public static void main(String[] args) { //創(chuàng)建對象 Test1 obj1 = new Test1(); Test2 obj2 = new Test2(); // 獲取對象obj1的類 System.out.print("obj1的類是: "); System.out.println(obj1.getClass()); // 獲取對象obj2的類 System.out.print("obj2的類是: "); System.out.println(obj2.getClass()); } }
輸出結(jié)果
obj1的類是: class Test1 obj2的類是: class Test2
在上面的示例中,我們使用了Object類的getClass()方法來獲取對象obj1和obj2的類名稱。
要了解更多信息,請訪問Java Object getClass()。
class Test { // class } class Main { public static void main(String[] args) { //創(chuàng)建一個對象 Test obj = new Test(); // 檢查obj是否為Test的對象 if(obj instanceof Test) { System.out.println("obj是Test類的對象"); } else { System.out.println("obj不是Test類的對象"); } } }
輸出結(jié)果
obj是Test類的對象
在上面的示例中,我們使用instanceof運算符檢查對象obj是否為Test的實例。
class Test { // first class } class Main { public static void main(String[] args) { //創(chuàng)建一個對象 Test obj = new Test(); //檢查obj是否為Test1的對象 if(Test.class.isInstance(obj)){ System.out.println("obj是Test類的對象"); } else { System.out.println("obj不是Test類的對象"); } } }
輸出結(jié)果
obj是Test類的對象
在這里,我們使用了Class類的isInstance()方法來檢查對象obj是否為Test類的對象。
isInstance()方法的工作原理與instanceof運算符類似。但是,最好在運行時使用。