Khẳng định nào sau đây là sai?
Đáp án đúng: A
JavaBean là một lớp Java tuân theo một số quy tắc nhất định. Các quy tắc này bao gồm:
- Phải có một hàm tạo không đối số (no-argument constructor).
- Các thuộc tính (fields) thường là private.
- Truy cập các thuộc tính thông qua các phương thức getter và setter (hoặc isGetter cho kiểu boolean).
- Phải implements Serializable (tùy chọn).
Như vậy, một JavaBean không được chứa các trường public. Khẳng định A là sai. Các khẳng định còn lại đều đúng (C và D thực chất là một, đều nói về constructor không tham số)
Câu hỏi liên quan
* Đáp án A: JavaBean không thể là lớp trừu tượng là đúng, vì JavaBean cần được khởi tạo và sử dụng trực tiếp. Lớp trừu tượng không thể khởi tạo trực tiếp.
* Đáp án B: JavaBean không nhất thiết phải là một interface, mà phải là một lớp (class). Interface chỉ định nghĩa các phương thức mà lớp phải triển khai, còn JavaBean cần là một lớp cụ thể để chứa dữ liệu và hành vi.
* Đáp án C: JavaBean phải có một hàm tạo không đối số (no-argument constructor) là đúng, để container có thể tạo instance của bean một cách dễ dàng.
* Đáp án D: JavaBean thường được vận dụng theo cơ chế Serializable là đúng, để có thể lưu trữ và truyền tải trạng thái của bean.
Vì vậy, khẳng định sai là B.
* Lệnh 1: `
* Lệnh 2: `
* Lệnh 3: `<%BoxBean1.setLength(10);%>` - Thiết lập giá trị cho thuộc tính "length" thông qua phương thức `setLength()`. Đây là cách sử dụng scriptlet, không phải JSP tag.
* Lệnh 4: `
Do đó, lệnh 4 là lệnh chính xác để lấy thông tin của thuộc tính length.
JavaBean thường bao gồm ba thành phần chính:
- Các thuộc tính (Properties): Đại diện cho trạng thái của JavaBean.
- Các phương thức (Methods): Cung cấp khả năng thao tác và truy cập vào các thuộc tính, cũng như thực hiện các hành động khác.
- Các sự kiện (Events): Cho phép JavaBean thông báo cho các thành phần khác về những thay đổi trạng thái hoặc hành động đã xảy ra.
Do đó, đáp án C (3) là đáp án chính xác nhất.
* A. setter: Phương thức setter dùng để thiết lập giá trị cho thuộc tính, không phải để lấy giá trị.
* B. getter: Phương thức getter dùng để lấy giá trị của thuộc tính. Đây là đáp án đúng.
* C. constructor: Constructor là phương thức khởi tạo đối tượng, không liên quan đến việc lấy giá trị thuộc tính.
* D. destructor: Destructor là phương thức hủy đối tượng (trong một số ngôn ngữ), không liên quan đến việc lấy giá trị thuộc tính.
Vậy, đáp án đúng là B.
Trong JavaBean, các thuộc tính (properties) phải tuân theo một số quy tắc nhất định để có thể truy cập và thao tác thông qua các phương thức getter và setter. Dưới đây là phân tích chi tiết về từng lệnh và lý do lệnh nào sai:
Lệnh 1: private int items={1,2,3,4,5};
- Đây là cách khởi tạo một mảng (array) trong Java. Tuy nhiên, trong ngữ cảnh của JavaBean, việc khởi tạo trực tiếp một mảng như vậy có thể không linh hoạt. Thông thường, thuộc tính
itemsnên được khởi tạo thông qua constructor hoặc setter để dễ dàng quản lý và thay đổi giá trị. Về mặt cú pháp, lệnh này không sai, nhưng trong thực tế xây dựng JavaBean, nó không phải là cách tốt nhất.
Lệnh 2: private PropertyChangeSupport pcs;
PropertyChangeSupportlà một lớp trong Java hỗ trợ việc thông báo (notification) khi một thuộc tính của JavaBean thay đổi. Việc khai báo một đối tượngPropertyChangeSupportlà hoàn toàn hợp lệ và thường được sử dụng trong JavaBeans để tuân thủ các quy tắc về sự kiện (events).
Lệnh 3 và 4:
public int getItems (int i)
{
return items[i];
}
- Đây là một phương thức getter, được sử dụng để truy xuất một phần tử của mảng
itemstại vị tríi. Tuy nhiên, nó vi phạm quy ước đặt tên của getter trong JavaBeans. Theo quy ước, nếuitemslà một thuộc tính (property) thì getter của nó phải làgetItems()(không có tham số) hoặc nếu muốn truy cập một phần tử cụ thể, cần có một phương thức khác rõ ràng hơn thay vì dùng getter có tham số. Việc sử dụng getter có tham số (nhưgetItems(int i)) là một sai sót trong thiết kế JavaBean vì nó không tuân theo chuẩn và có thể gây khó khăn cho các công cụ và framework dựa trên JavaBeans để tự động phát hiện và thao tác với thuộc tính này.
Do đó, lệnh sai trong ngữ cảnh xây dựng JavaBean là lệnh định nghĩa phương thức getItems(int i).

Bộ Đồ Án Tốt Nghiệp Ngành Trí Tuệ Nhân Tạo Và Học Máy

Bộ 120+ Đồ Án Tốt Nghiệp Ngành Hệ Thống Thông Tin

Bộ Đồ Án Tốt Nghiệp Ngành Mạng Máy Tính Và Truyền Thông

Bộ Luận Văn Tốt Nghiệp Ngành Kiểm Toán

Bộ 370+ Luận Văn Tốt Nghiệp Ngành Kế Toán Doanh Nghiệp

Bộ Luận Văn Tốt Nghiệp Ngành Quản Trị Thương Hiệu
ĐĂNG KÝ GÓI THI VIP
- Truy cập hơn 100K đề thi thử và chính thức các năm
- 2M câu hỏi theo các mức độ: Nhận biết – Thông hiểu – Vận dụng
- Học nhanh với 10K Flashcard Tiếng Anh theo bộ sách và chủ đề
- Đầy đủ: Mầm non – Phổ thông (K12) – Đại học – Người đi làm
- Tải toàn bộ tài liệu trên TaiLieu.VN
- Loại bỏ quảng cáo để tăng khả năng tập trung ôn luyện
- Tặng 15 ngày khi đăng ký gói 3 tháng, 30 ngày với gói 6 tháng và 60 ngày với gói 12 tháng.