Câu hỏi phỏng vấn Java
Câu hỏi

Sự khác giữa một Non-static nested class và một Static nested class trong Java là gì?

Câu trả lời

Trong Java, cả Non-static nested class (còn gọi là Inner class) và Static nested class là hai loại lớp lồng nhau có một số điểm khác biệt chính:

Non-static Nested Class (Inner Class):

  • Quan hệ: Inner class có một quan hệ mật thiết với lớp bên ngoài của nó. Mỗi thể hiện của inner class đều liên kết với một thể hiện cụ thể của lớp bên ngoài.
  • Truy cập: Inner class có thể truy cập tất cả các thành viên (bao gồm cả dữ liệu và phương thức) của lớp bên ngoài, kể cả những thành viên được khai báo là private.
  • Mục đích sử dụng: Thường được sử dụng khi cần một lớp để hỗ trợ lớp bên ngoài của nó mà không cần thiết cho bất kỳ lớp nào khác, hoặc khi cần truy cập vào các thành viên không tĩnh của lớp bên ngoài.

Static Nested Class:

  • Quan hệ: Static nested class không có một quan hệ mật thiết với lớp bên ngoài của nó như inner class. Nó được coi như là một thành viên tĩnh của lớp bên ngoài và có thể được tạo mà không cần một thể hiện của lớp bên ngoài.
  • Truy cập: Static nested class chỉ có thể truy cập các thành viên tĩnh của lớp bên ng...
senior

senior

Gợi ý câu hỏi phỏng vấn

middle

Java có hỗ trợ đa kế thừa không?

senior

Vai trò của lớp java.rmi.Naming là gì?

middle

Liệt kê các bước để một chương trình RMI hoạt động?

Bình luận

Chưa có bình luận nào

Chưa có bình luận nào