Chương trình Java để xác định lớp của một đối tượng

Trong ví dụ này, chúng ta sẽ học cách xác định lớp của một đối tượng trong Java bằng phương thức getClass (), toán tử instanceof và phương thức isInstance ().

Để hiểu ví dụ này, bạn nên có kiến ​​thức về các chủ đề lập trình Java sau:

  • Lớp và đối tượng Java
  • Toán tử instanceof của Java

Ví dụ 1: Kiểm tra lớp của một đối tượng bằng 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()); ) )

Đầu ra

 Lớp của obj1 là: lớp Test1 Lớp của obj2 là: lớp Test2

Trong ví dụ trên, chúng ta đã sử dụng getClass()phương thức của Objectlớp để lấy tên lớp của các đối tượng obj1 và obj2.

Để tìm hiểu thêm, hãy truy cập Java Object getClass ().

Ví dụ 2: Kiểm tra lớp của một đối tượng bằng toán tử 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"); ) ) )

Đầu ra

 obj là một đối tượng của lớp Test

Trong ví dụ trên, chúng ta đã sử dụng instanceoftoán tử để kiểm tra xem đối tượng obj có phải là một thể hiện của Class Test hay không.

Ví dụ 3: Kiểm tra lớp của một đối tượng bằng 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"); ) ) )

Đầu ra

 obj là một đối tượng của lớp Test

Ở đây, chúng ta đã sử dụng isInstance()phương thức của lớp Classđể kiểm tra xem đối tượng obj có phải là đối tượng của Lớp kiểm tra hay không.

Các isInstance()phương pháp làm việc giống như các instanceofnhà điều hành. Tuy nhiên, nó được ưu tiên trong thời gian chạy.

thú vị bài viết...