I dette eksempel lærer vi at bestemme klassen for et objekt i Java ved hjælp af getClass () -metoden, instans af operator og metoden isInstance ().
For at forstå dette eksempel skal du have kendskab til følgende Java-programmeringsemner:
- Java-klasse og objekter
- Java-instans af operatør
Eksempel 1: Kontroller klassen for et objekt ved hjælp af 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()); ) )
Produktion
Klassen af obj1 er: klasse Test1 Klassen af obj2 er: klasse Test2
I ovenstående eksempel har vi brugt getClass()
metoden i Object
klassen til at få klassens navn på objekterne obj1 og obj2.
For at lære mere, besøg Java Object getClass ().
Eksempel 2: Kontroller klassen for et objekt ved hjælp af instanceOf-operatoren
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"); ) ) )
Produktion
obj er et objekt fra testklassen
I ovenstående eksempel har vi brugt instanceof
operatøren til at kontrollere, om objektet obj er en forekomst af klasse Test.
Eksempel 3: Kontroller klassen for et objekt ved hjælp af 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"); ) ) )
Produktion
obj er et objekt fra testklassen
Her har vi brugt isInstance()
metoden i klassen Class
til at kontrollere, om objektet obj er et objekt i klassetesten.
Den isInstance()
metode virker på samme måde som instanceof
operatøren. Det foretrækkes dog i løbet af løbetiden.