97. Local Inner Class trong lập trình Java

Local Inner Class (Lớp Inner Class Cục bộ) trong lập trình Java là một loại Inner Class được định nghĩa bên trong một phương thức hoặc khối lệnh trong một lớp bên ngoài. Nó có tên riêng và chỉ có thể truy cập từ bên trong phương thức hoặc khối lệnh mà nó được định nghĩa.

Local Inner Class thường được sử dụng khi bạn muốn triển khai một lớp nhỏ, đơn giản chỉ để phục vụ cho một mục đích cụ thể trong phạm vi của một phương thức hoặc khối lệnh. Nó giúp làm mã nguồn dễ đọc hơn và giữ cho mã của bạn gọn gàng hơn trong một số trường hợp.

Để định nghĩa một Local Inner Class, bạn đặt nó bên trong một phương thức hoặc khối lệnh bằng cách sử dụng cú pháp sau:

java
class OuterClass {
    // Phương thức của lớp bên ngoài

    void outerMethod() {
        // Định nghĩa Local Inner Class
        class LocalInnerClass {
            // Thành viên (Member) của Local Inner Class
        }

        // Các câu lệnh trong phương thức
    }
}

Dưới đây là một ví dụ về cách sử dụng Local Inner Class:

java
class OuterClass {
    private int outerField = 10;

    void outerMethod() {
        // Định nghĩa Local Inner Class
        class LocalInnerClass {
            void innerMethod() {
                System.out.println("Value of outerField: " + outerField);
            }
        }

        // Tạo đối tượng Local Inner Class và gọi phương thức của nó
        LocalInnerClass inner = new LocalInnerClass();
        inner.innerMethod();
    }
}

public class Main {
    public static void main(String[] args) {
        OuterClass outer = new OuterClass();
        outer.outerMethod();
    }
}

Trong ví dụ trên, ta đã định nghĩa một Local Inner Class LocalInnerClass trong phương thức outerMethod của lớp OuterClass. Local Inner Class có thể truy cập vào các trường và phương thức của lớp bên ngoài OuterClass (như outerField), nhưng nó chỉ có thể được sử dụng và truy cập trong phạm vi của phương thức outerMethod.

Local Inner Class thường được sử dụng khi bạn muốn triển khai một chức năng nhỏ, riêng biệt chỉ trong một phạm vi hẹp. Nó giúp giữ cho mã nguồn ngắn gọn và giúp tăng tính đóng gói của mã.

Leave a Comment

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

Scroll to Top