I det här exemplet lär vi oss att bestämma klassen för ett objekt i Java med hjälp av getClass () -metoden, instans av operatören och metoden isInstance ().
För att förstå detta exempel bör du ha kunskap om följande Java-programmeringsämnen:
- Java-klass och objekt
- Java-instans av operatör
Exempel 1: Kontrollera klass för ett objekt med 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 av obj1 är: klass Test1 Klassen av obj2 är: klass Test2
I exemplet ovan har vi använt klassens getClass()
metod för Object
att få klassnamnet på objekten obj1 och obj2.
För att lära dig mer, besök Java Object getClass ().
Exempel 2: Kontrollera klassen för ett objekt med instans-operator
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 är ett objekt i testklassen
I exemplet ovan har vi använt instanceof
operatören för att kontrollera om objektet obj är en förekomst av klasstestet.
Exempel 3: Kontrollera klass för ett objekt med 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 är ett objekt i testklassen
Här har vi använt isInstance()
klassens metod för Class
att kontrollera om objektet obj är ett objekt i klasstestet.
Den isInstance()
metod fungerar på samma sätt som instanceof
operatören. Det föredras dock under körtiden.