Java Program to Determine the class of an object

Java Program to Determine the class of an object

In this example, we will learn to determine the class of an object in Java using the getClass() method, instanceof operator, and the isInstance() method.

Example 1: Java program to check the class of an object using getClass() method

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());
  }
}

Output

The class of obj1 is: class Test1
The class of obj2 is: class Test2

In the above example, we have used the getClass() method of the Object class to get the class name of the objects obj1 and obj2.

To learn more, visit Java Object getClass().


Example 2: Java program to check the class of an object using instanceOf 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");
    }
  }
}

Output

obj is an object of the Test class

In the above example, we have used the instanceof operator to check if the object obj is an instance of the class Test.

To learn more, visit Java instanceof.


Example 3: Java Program to check the class of an object using the isInstance() method

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");
    }
  }
}

Output

obj is an object of the Test class

Here, we have used the isInstance() method of the class Class to check if the object obj is an object of the class Test.

The isInstance() method works similar to the instanceof operator. However, it is preferred during the run time.