Tässä esimerkissä opitaan määrittämään Java-objektin luokka käyttämällä getClass () -menetelmää, instanceof-operaattoria ja isInstance () -menetelmää.
Tämän esimerkin ymmärtämiseksi sinulla on oltava tieto seuraavista Java-ohjelmointiaiheista:
- Java-luokka ja objektit
- Operaattorin Java-instanssi
Esimerkki 1: Tarkista objektin luokka getClass () -ominaisuuden avulla
class Test1 ( // first class ) class Test2 ( // second class ) class Main ( public static void main(String() args) ( // create objects Test1 obj1 = new Test1(); Test2 obj2 = new Test2(); // get the class of the object obj1 System.out.print("The class of obj1 is: "); System.out.println(obj1.getClass()); // get the class of the object obj2 System.out.print("The class of obj2 is: "); System.out.println(obj2.getClass()); ) )
Tuotos
Obj1-luokka on: luokka Test1 Luokka obj2 on: luokka Test2
Yllä olevassa esimerkissä olemme käyttäneet getClass()menetelmää Objectluokan saada luokan nimi esineiden obj1 ja Obj2.
Lisätietoja on Java Object getClass () -sivulla.
Esimerkki 2: Tarkista objektin luokka operaattorin instanceOf avulla
class Test ( // class ) class Main ( public static void main(String() args) ( // create an object Test obj = new Test(); // check if obj is an object of Test if(obj instanceof Test) ( System.out.println("obj is an object of the Test class"); ) else ( System.out.println("obj is not an object of the Test class"); ) ) )
Tuotos
obj on testiluokan kohde
Yllä olevassa esimerkissä olemme käyttäneet instanceofoperaattoria tarkistaaksemme, onko objekti obj luokan Test esiintymä.
Esimerkki 3: Tarkista objektin luokka käyttämällä isInstance ()
class Test ( // first class ) class Main ( public static void main(String() args) ( // create an object Test obj = new Test(); // check if obj is an object of Test1 if(Test.class.isInstance(obj))( System.out.println("obj is an object of the Test class"); ) else ( System.out.println("obj is not an object of the Test class"); ) ) )
Tuotos
obj on testiluokan kohde
Tässä olemme käyttäneet isInstance()luokan Classmenetelmää tarkistaaksemme, onko objekti obj luokan Test kohde.
isInstance()Menetelmä toimii samalla tavalla kuin instanceofoperaattori. Se on kuitenkin edullinen ajoaikana.








