17. Toán tử instanceof trong lập trình Java hướng đối tượng

Trong lập trình Java hướng đối tượng, toán tử instanceof được sử dụng để kiểm tra một đối tượng có thuộc một kiểu cụ thể hay không. Cú pháp của toán tử instanceof như sau:

java
object instanceof type

Trong đó:

  • object là một biểu thức đại diện cho một đối tượng.
  • type là một kiểu dữ liệu (class hoặc interface) mà chúng ta muốn kiểm tra đối tượng có thuộc về hay không.

Kết quả của toán tử instanceof là một giá trị boolean (true hoặc false). Nếu đối tượng được kiểm tra là một thể hiện của kiểu được chỉ định, kết quả là true; ngược lại, kết quả là false.

Ví dụ:

java
class Animal {
    // ...
}

class Dog extends Animal {
    // ...
}

class Cat extends Animal {
    // ...
}

public class Main {
    public static void main(String[] args) {
        Animal animal = new Dog();

        if (animal instanceof Dog) {
            System.out.println("animal is an instance of Dog");
        }

        if (animal instanceof Cat) {
            System.out.println("animal is an instance of Cat");
        } else {
            System.out.println("animal is not an instance of Cat");
        }
    }
}

Trong ví dụ này, chúng ta có các lớp Animal, Dog, và Cat. Chúng ta tạo ra một đối tượng animal của kiểu Animal nhưng thực tế đang tham chiếu đến một đối tượng Dog. Sử dụng toán tử instanceof, chúng ta kiểm tra xem animal có phải là một thể hiện của lớp Dog hay không. Kết quả là true, vì animal thực sự là một đối tượng Dog. Sau đó, chúng ta kiểm tra xem animal có phải là một thể hiện của lớp Cat hay không. Kết quả là false, vì animal không phải là một đối tượng Cat.

Toán tử instanceof thường được sử dụng để kiểm tra kiểu đối tượng trước khi thực hiện các hoạt động hay ép kiểu tương ứng, đảm bảo rằng các phép toán hoặc thao tác chỉ được thực hiện trên các đối tượng hợp lệ.

Leave a Comment

Your email address will not be published. Required fields are marked *

Scroll to Top