Làm thế nào để lấy loại đối tượng trong Java?

Lam The Nao De Lay Loai Doi Tuong Trong Java



Một đối tượng là một thực thể vật lý có trạng thái và hành vi riêng và nó hoạt động như một thể hiện duy nhất của một lớp Java. Nó. Khi đối tượng bắt nguồn từ một nguồn, việc kiểm tra loại đối tượng được coi là hữu ích. Ngoài ra, biết loại đối tượng là rất quan trọng khi làm việc với một tập hợp bao gồm các đối tượng khác nhau hoặc khi nó được yêu cầu thực hiện hoạt động logic với cùng một loại biến.

Bài viết này sẽ giúp bạn tìm hiểu phương pháp lấy kiểu của một đối tượng trong Java.

Làm thế nào để lấy loại đối tượng trong Java?

Để nhận loại đối tượng lớp được xác định trước hoặc do người dùng xác định trong Java, bạn có thể sử dụng:







  • getClass () phương pháp
  • ví dụ của nhà điều hành

Bây giờ chúng ta sẽ lần lượt kiểm tra từng phương pháp đã đề cập!



Phương pháp 1: Lấy loại đối tượng lớp được xác định trước bằng phương thức getClass ()

Trong Java, chúng ta có các lớp được xác định trước như các lớp trình bao bọc như String, Double, Integer, và nhiều lớp khác. Đôi khi chúng ta cần xác minh kiểu đối tượng trong khi sử dụng các lớp được xác định trước. Vì mục đích này, Java cung cấp một “ getClass () 'Phương pháp thuộc về' Sự vật ' lớp.



Cú pháp
Cú pháp của “ getClass () ”Được đưa ra như sau:





x. getClass ( )

Đây, “ getClass () Phương thức 'sẽ trả về lớp của' x ' sự vật.

Thí dụ
Trong ví dụ này, chúng tôi sẽ tạo một đối tượng kiểu Chuỗi có tên là “ x ”Chứa giá trị sau:



Sợi dây x = 'Xin chào' ;

Tiếp theo, chúng tôi sẽ in một tuyên bố bằng cách sử dụng “ System.out.println () ' phương pháp:

Hệ thống . ngoài . println ( 'x thuộc về?' ) ;

Cuối cùng, chúng ta sẽ nhận được loại đối tượng “ x ”Bằng cách gọi“ getClass () ' phương pháp:

Hệ thống . ngoài . in ( x. getClass ( ) ) ;

Kết quả cho thấy rằng biến được tạo thuộc lớp Java String:

Hãy xem một phương thức khác để lấy loại đối tượng bằng toán tử “instanceof”.

Phương pháp 2: Lấy loại đối tượng lớp được xác định trước bằng toán tử “instanceof”

Bạn cũng có thể sử dụng “ ví dụ của ”Để kiểm tra kiểu đối tượng trong chương trình Java. Toán tử này trả về một giá trị boolean cho biết đối tượng có phải là một thể hiện của lớp cụ thể hay không.

Cú pháp
Cú pháp của “ ví dụ của ' là như sau:

x ví dụ của Số nguyên

Nơi đây, ' x 'Là một đối tượng và' Số nguyên ”Là lớp trình bao bọc Java được xác định trước. Các ' ví dụ của ”Toán tử kiểm tra xem đối tượng có thuộc lớp được đề cập hay không và trả về giá trị boolean.

Thí dụ
Trong ví dụ này, chúng ta có một đối tượng “ x ”Của lớp Integer có“ 5 ”Như giá trị của nó:

Số nguyên x = 5 ;

Tiếp theo, chúng tôi sẽ in một tuyên bố bằng cách sử dụng “ System.out.println () ' phương pháp:

Hệ thống . ngoài . in ( 'x là một thể hiện của lớp Integer?' ) ;

Bây giờ, chúng ta sẽ kiểm tra xem đối tượng có phải là một thể hiện của lớp Integer hay không:

Hệ thống . ngoài . in ( x ví dụ của Số nguyên ) ;

Kết quả hiển thị “ thật 'Như đối tượng' x ”Là một thể hiện của lớp Integer:

Tại thời điểm này, bạn có thể tự hỏi về cách lấy kiểu đối tượng lớp do người dùng định nghĩa. Phần dưới đây sẽ hỗ trợ bạn trong vấn đề này.

Phương pháp 3: Lấy loại đối tượng lớp do người dùng xác định bằng cách sử dụng phương thức getClass ()

Bạn cũng có thể lấy loại đối tượng lớp do người dùng xác định với sự trợ giúp của “ getClass () ' phương pháp. Trong trường hợp như vậy, chúng tôi sẽ so sánh đối tượng với tên lớp bằng cách sử dụng “ == ”Toán tử so sánh.

Cú pháp
Đối với mục đích cụ thể, cú pháp của “ getClass () ”Phương pháp được đưa ra là:

myclassObj. getClass ( ) == Lớp học của tôi. lớp

Đây, “ getClass () Phương thức 'được gọi bởi' myclassObj ”Đối tượng của“ Lớp học của tôi 'Và sau đó được so sánh với tên bằng toán tử so sánh' == ”.

Thí dụ
Trong ví dụ này, chúng tôi có ba lớp được đặt tên là “ Lớp học của tôi ',' MynewClass ', và ' Thí dụ ”, Trong đó MyClass hoạt động như một lớp cha của MynewClass:

lớp Lớp học của tôi { }

Các ' MynewClass 'Là một lớp con vì nó được mở rộng từ' Lớp học của tôi ”:

lớp MynewClass kéo dài Lớp học của tôi { }

Trong phương thức main () của lớp “ Thí dụ ”, Chúng tôi sẽ khai báo và khởi tạo một đối tượng của lớp cha“ Lớp học của tôi ”. Sau đó kiểm tra xem đối tượng được tạo có thuộc lớp nào không; cha mẹ hay con cái? Để làm như vậy, chúng tôi sẽ gọi là “ getClass () ”Với đối tượng đã tạo và so sánh giá trị kết quả với tên lớp cha và con bằng cách sử dụng điều kiện if-else-if:

công cộng lớp Thí dụ {
công cộng tĩnh vô hiệu chính ( Sợi dây [ ] args ) {
MyClass myclassObj = Mới Lớp học của tôi ( ) ;
nếu ( myclassObj. getClass ( ) == Lớp học của tôi. lớp ) {
Hệ thống . ngoài . println ( 'Đối tượng 'myclassObj' là một loại 'MyClass'' ) ;
} khác nếu ( myclassObj. getClass ( ) == MynewClass. lớp ) {
Hệ thống . ngoài . println ( 'Đối tượng 'myclassObj' là một loại 'MynewClass'' ) ;
}
}
}

Đầu ra chỉ ra rằng đối tượng “ myclassObj ”Thuộc về lớp cha có tên là“ Lớp học của tôi ”:

Bây giờ, hãy hướng tới phần tiếp theo!

Phương pháp 4: Lấy loại đối tượng lớp do người dùng xác định bằng toán tử “instanceof”

Tương tự như các lớp được xác định trước, đối với các lớp do người dùng xác định, bạn cũng có thể lấy loại đối tượng bằng cách sử dụng “ ví dụ của ' nhà điều hành.

Cú pháp
Cú pháp được đưa ra dưới đây:

myclassObj ví dụ của Lớp học của tôi

Đây, “ ví dụ của 'Nhà điều hành sẽ kiểm tra xem' myclassObj ”Là một ví dụ của“ Lớp học của tôi ' hay không.

Thí dụ
Bây giờ chúng ta sẽ sử dụng các lớp tương tự mà chúng ta đã tạo trong ví dụ đã đề cập trước đó. Sự khác biệt duy nhất là chúng tôi sẽ sử dụng “ ví dụ của Toán tử ”để xác minh xem cá thể đối tượng đã tạo thuộc về lớp cha hay lớp con:

công cộng lớp Thí dụ {
công cộng tĩnh vô hiệu chính ( Sợi dây [ ] args ) {
MyClass myclassObj = Mới Lớp học của tôi ( ) ;
nếu ( myclassObj ví dụ của Lớp học của tôi ) {
Hệ thống . ngoài . println ( 'Đối tượng 'myclassObj' là một ví dụ của 'MyClass'' ) ;
} khác nếu ( myclassObj ví dụ của MynewClass ) {
Hệ thống . ngoài . println ( 'Đối tượng 'myclassObj' là một ví dụ của 'MynewClass'' ) ;
}
}
}

Đầu ra đã cho cho thấy rằng “ ví dụ của Toán tử 'đã xác thực loại đối tượng là' Lớp học của tôi ”:

Chúng tôi đã biên dịch tất cả các phương thức liên quan đến việc lấy kiểu đối tượng trong Java.

Sự kết luận

Để lấy một loại đối tượng trong Java, bạn có thể sử dụng “ getClass () ”Hoặc phương pháp“ ví dụ của ' nhà điều hành. Các phương thức này có thể được sử dụng để kiểm tra các kiểu đối tượng cho cả các lớp được xác định trước và do người dùng xác định. Phương thức getClass () trả về tên lớp trong khi toán tử “instanceof” trả về giá trị boolean, trong đó “ thật ”Cho biết đối tượng thuộc về lớp được chỉ định đó; nếu không, nó trả về “ sai ”. Bài viết này cung cấp tất cả các phương pháp để lấy kiểu đối tượng trong Java.