Selles näites õpime Java-s objekti klassi määrama, kasutades meetodit getClass (), operaator instanceof ja isInstance ().
Selle näite mõistmiseks peaksid teil olema teadmised järgmistest Java programmeerimise teemadest:
- Java klass ja objektid
- Operaatori Java eksemplar
Näide 1: Kontrollige objekti klassi, kasutades getClass ()
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()); ) )
Väljund
Obj1 klass on: klass Test1 Klass obj2 on: klass Test2
Eespool toodud näites, oleme kasutanud getClass()
meetodit Object
klassi saada klassi objektide nimetused, obj1 ja obj2.
Lisateabe saamiseks külastage Java Object getClass ().
Näide 2: Kontrollige objekti klassi, kasutades operaatorit instanceOf
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"); ) ) )
Väljund
obj on klassi Test objekt
Ülaltoodud näites oleme kasutanud instanceof
operaatorit kontrollimaks, kas objekti objekt on klassi Test eksemplar.
Näide 3: Kontrollige objekti klassi, kasutades 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"); ) ) )
Väljund
obj on klassi Test objekt
Siin oleme kasutanud isInstance()
klassi meetodit Class
kontrollimaks, kas objekt obj on klassi Test objekt.
isInstance()
Meetod töötab sarnaselt instanceof
operaator. Kuid see on eelistatud jooksuajal.