








Preview text:
BÀI ÔN TẬP
Môn: LẬP TRÌNH HƯỚNG ĐỐI TƯỢNG – CS311
PHẦN 1: TRẮC NGHIỆM Chương 01 Giới thiệu tổng quan về ngôn ngữ
về ngôn ngữ lập trình Java 1. (0.250 Point)
Ngôn ngữ Java được phát triển bởi A. Sun Microsystems B. Microsoft C. Cisco Systems D. IBM 2. (0.250 Point)
Đâu là phát biểu SAI về ngôn ngữ Java
A. Chương trình Java chỉ có thể chạy trên hệ điều hành Win
B. Java là ngôn ngữ lập trình Hướng đối tượng
C. Dấu ';' được sử dụng để kết thúc câu lệnh trong java
D. Java phân biệt chữ Hoa và chữ thường 3. (0.250 Point)
Java Virtual Machine là gì?
A. Là một thành phần của Java platform dùng để đọc mã bytecode trong file .class
B. Là chương trình biên dịch của java dùng để biên dịch file nguồn java thành mã bytecode.
C. Là chương trình chạy cho java
D. Tất cả các đáp án đều đúng 4. (0.250 Point)
Java chạy trên hệ điều hành nào sau đây: A. Microsoft Windows B. Linux C. Sun Solaris OS
D. Tất cả các đáp án đều đúng.
5. (0.250 Point) API là gì?
A. Thư viện mã nguồn của Java.
B. Là thư viện chứa các thành phần phần mềm tạo sẵn cung cấp các chức năng cho chương trình Java.
C. Thư viện cung cấp giao diện đồ họa cho chương trình Java. D. Tất cả đều sai. 6. (0.250 Point)
Ngôn ngữ lập trình Java cung cấp các chức năng nào sau đây?
A. Giao diện lập trình ứng dụng
B. Bộ công cụ giao diện người dùng C. Thư viện tích hợp D. Tất cả đáp án trên
Chương 02 Lập trình hướng đối tượng trong java (40g) 7. (0.250 Point)
Java platform gồm mấy thành phần? A. 1
B. 2 (biên dịch: builder, chạy:run ) C. 3 D. 4
Chú ý: Kiến trúc của Java khác với Platform của Java 8. (0.250 Point)
Một đối tượng là một thể hiện của .................... A. Lớp B. Chương trình C. Phương thức D. Dữ liệu 9. (0.250 Point)
............ được gọi khi tạo đối tượng
A. Hàm thiết lập (constructor) B. Hàm main
C. Phương thức có kiểu trả về
D. Phương thức không có kiểu trả về (void) 10. (0.250 Point)
Phương thức dùng để gán cho nội dung Label là A. setText(String) B. setTextLabel("noi dung") C. setLabelText("noi dung") D. setLabel("noi dung") 11. (0.250 Point)
Từ khóa bắt buộc phải có khi xây dựng 1 lớp A. class B. public C. static D. private 12. (0.250 Point)
........... là một cấu trúc để xác định các đối tượng cùng loại A. Class (lớp) B. Object (đối tượng) C. Method (phương thức)
D. Data fields (thuộc tính) 13. (0.250 Point)
Hàm main trong Java được viết là:
A. public static void main(String[] args)
B. public static void main(string[] args)
C. public static void Main(String[] args)
D. public static main(String[] args) 14. (0.250 Point)
Chọn lệnh khai báo biến đúng: A. int length; int width; B. int length- width; C. int length; width; D. int length, int width; 15. (0.250 Point)
Khi biên dịch gặp lỗi Exception in thread main java.lang.NoClassDefFoundError:
myprogram. Lỗi này có nghĩa gì?
A. Đường dẫn chương trình sai. B. Không có hàm main C. Không khai báo class
D. Không có từ khóa public tại mở đầu khai báo class 16. (0.250 Point)
Đối tượng trong phần mềm là gì?
A. Là một bó phần mềm gồm các hành vi và trạng thái có liên quan với nhau.
B. Là vật thể xác định của thế giới thực.
C. Là vật thể gồm hành vi và trạng thái.
D. Là các đối tượng được biểu diễn trong phần mềm gồm có 2 thuộc tính trường dữ liệu và
cáccách xử lý dữ liệu. 17. (0.250 Point)
Khai báo lớp nào dưới đây là đúng? A. public class default {}
B. protected inner class engine {}
C. final class outer {}D. Tất cả A,B,C đều sai. 18. (0.250 Point)
Cách đặt tên nào sau đây là sai? A. 2word B. *wordC. main D. Tất cả đều sai. 19. (0.250 Point)
Một chương trình gồm 2 class sẽ có bao nhiêu cách main? A. 1 B. 2 C. 3 D. 4 20. (0.250 Point)
Một lớp trong Java có thể có bao nhiêu lớp cha? A. 1 B. 2 C. 3 D. 4 21. (0.250 Point)
Một lớp trong Java có bao nhiêu lớp con? A. 2 B. 3 C. 4 D. Vô số 22. (0.250 Point)
Để khai báo lớp Xedap1 kế thừa lớp Xedap phải làm như thế nào?
A. class Xedap1 extend Xedap {}
B. public classs Xedap1 extend Xedap {} C. class Xedap1 extends Xedap {} D. Tất cả đều sai. 23. (0.250 Point)
Chọn câu trả lời đúng nhất. Interface là gì?
A. Là lớp chứa các phương thức rỗng có liên quan với nhau.
B. Là một kiểu tham chiếu, tương tự như class, chỉ có thể chứa hằng giá trị, khai báo cách
(phương thức)và kiểu lồng.
C. Là một cách thực hiện của lớp khác.
D. Là lớp nối giữa lớp cơ sở và lớp cha. 24. (0.250 Point)
Để sử dụng giao diện Xedap cho lớp Xedap1, ta làm thế nào?
A. class Xedap1 implement Xedap {}
B. public class Xedap1 implement Xedap {}
C. class Xedap1 implements Xedap {}
D. public class Xedap1 extends Xedap {} 25. (0.250 Point)
Có bao nhiêu loại biến trong Java? A. 1 B. 2 C. 3 D. 4
Lưu ý: Java có 4 loại biến và 8 kiểu dữ liệu. 26. (0.250 Point)
Trường dữ liệu là các biến dạng nào sau đây?
A. Biến thay mặt và Tham số
B. Biến thay mặt và biến lớp
C. Biến thay mặt và biến cục bộ D. Biến lớp và Tham số 27. (0.250 Point)
Biến dữ liệu là các biến dạng nào sau đây? A. Biến lớp và Tham số
B. Biến cục bộ và Tham số
C. Biến cục bộ và biến lớpD. Các đáp án A, B, C đều sai. 28. (0.250 Point)
Biến f nào sau đây là biến đại diện? A. float f; B. public static f; C. double CA(int f)
D. Không có giá trị đúng 29. (0.250 Point)
Khai báo nào sau đây là khai báo biến lớp? A. final double d; B. private static id; C. volatile int sleepTime
D. Không có đáp án đúng 30. (0.250 Point)
Cách đặt tên nào sau đây là không chính xác? A. final B. dem C. _final D. $final 31. (0.250 Point)
Có bao nhiêu kiểu dữ liệu cơ sở trong Java? A. 7 B. 8 C. 9 D. 5 32. (0.250 Point)
Có bao nhiêu kiểu số nguyên trong Java? A. 1 B. 2 C. 3
D. Tất cả A, B, C đều sai. 33. (0.250 Point)
Có bao nhiêu kiểu dữ liệu ký tự cơ sở trong Java? A. 1 B. 2 C. 3 D. Tất cả đều sai. 34. (0.250 Point)
Khái niệm phương thức start()?
A. Mọi phương thức thực hiện tác vụ sau khi khởi tạo phải chèn lên phương thức start. start()
bắt đầu việc thực thi của applet.
B. Là phương thức bắt đầu của applet và chạy song song với applet.
C. phương thức khởi tạo của applet và chạy song song với applet. D. Tất cả đều sai. 35. (0.250 Point)
Khối lệnh sau có kết quả bao nhiêu?
String greeting = “Hello”; int k = greeting.length(); System.out.print (k); A. 4 B. 5 C. 6 D. 7
Chương 03 Lập trình giao diện đồ hoạ 36. (0.250 Point)
Cho lệnh Circle x = new Circle();Phát biểu nào sau đây là chính xác nhất
A. x chứa 1 tham chiều tới 1 đối tượng Circle
B. x chứa 1 giá trị nguyên
C. x chứa 1 đối tượng của kiểu Circle
D. Gán giá trị của Circle cho x 37. (0.250 Point)
Phương thức next() của lớp Scanner dùng để làm gì? A. Đọc 1 chuỗi (1 từ) B. Đọc 1 ký tự C. Đọc 1 dòng D. Đọc 1 số nguyên 38. (0.250 Point)
Một lớp trong java có thể có bao nhiêu lớp cha ? A. 1 B. 2 C. 3 D. 4 39. (0.250 Point)
Nếu bạn muốn ghi đè một phương thức của lớp chA. Trong phương thức này, nếu muốn
gọi đến phương thức bị ghi đè ở lớp cha thì bạn dùng từ khóa A. super B. parent C. this D. static 40. (0.250 Point)
Thuật ngữ được sử dụng cho việc che giấu thành phần chi tiết của đối tượng đối với các
thành phần khác trong chương trình được gọi là: A. Đóng gói B. Biên dịch C. Đa hình D. Thừa kế 41. (0.250 Point)
Để kiểm tra 2 chuỗi string1 và string2 bằng nhau hay không? ta dùng A. string1.equals(string2) B. string1=string2 C. string1==string2 D. string1.equal(string2)
42. (0.250 Point) interface là gì ?
A. Một interface là một tập hợp các hằng số và các các phương thức trừu tượng.
B. Một interface là một lớp mà một lớp con có thể mở rộng.
C. Một interface là một tập hợp các thành phần GUI.
D. Một interface là một tập hợp các phương thức có phạm vi truy xuất public. 43. (0.250 Point)
Phương thức nào cần phải được hiện thực bởi một button listener? A. actionPerformed() B. buttonAction() C. eventAction() D. actionMethod()
Chương 04 Lập trình đa tuyến 44. (0.250 Point)
Tên của phương thức được sử dụng để bắt đầu thực thi luồng là gì? A. B. C. D. 45. (0.250 Point)
Hai hàm tạo nào hợp lệ cho Thread? A. B. C. D. 46. (0.250 Point)
Ba phương thức nào là phương thức của lớp Object? A. B. C. D. 47. (0.250 Point) class X implements Runnable {
public static void main(String args[]) { /* Missing code? */ } public void run() {} }
Dòng mã nào sau đây phù hợp để bắt đầu một Thread? A. Thread t = new Thread(X);
B. Thread t = new Thread(X); t.start();
C. X run = new X(); Thread t = new Thread(run); t.start();
D. Thread t = new Thread(); x.run(); 48. (0.250 Point)
Phương thức nào không thể gọi trực tiếp từ Thread để thực hiện ngừng thực thi?
A. Gọi phương thức read() trên đối tượng InputStream.
B. Gọi phương thức notify() trên một đối tượng.
C. Gọi phương thức wait() trên một đối tượng.
D. Gọi phương thức SetPriority() trên đối tượng Thread. 49. (0.250 Point)
Hai phương thức nào sau đây được định nghĩa trong lớp Thread? 1. start() 2. wait() 3. notify() 4. run() 5. terminate() A. 1 và 4 B. 2 và 3 C. 3 và 3 D. 2 và 50. (0.250 Point)
Error! Bookmark not defined.
Cái nào sẽ chứa phần thân của Thread? A. run(); B. start(); C. stop(); D main();
PHẦN 2: TỰ LUẬN (THỰC HÀNH TRÊN MÁY TÍNH) Bài 1:
Xây dựng chương trình quản thư viện đơn giản gồm 2 loại: sách, tạp chí. Cả 2 loại đều có
thông tin chung như sau: mã sách, Tên, Nhà xuất bản, Năm xuất bản, Số trang, Giá bán, số lượng.
+Đối với sách có thêm thông tin về lứa tuổi (thiếu nhi, người lớn)
+Đối với tạp chí có thêm thông tin về thể loại (xã hội, khoa học kỹ thuật, văn học …);
Thành tiền đối với mỗi loại sách được tính như sau:
Đối với sách giảm 25%;
Đối với tiểu tạp chí giảm 15%; Yêu cầu:
1.Xây dựng lớp trừu tượng DanhMuc có các thuộc tính mã sách, tên, Nhà xuất bản, Năm xuất
bản, Số trang, Giá bán, số lượng và phương thức trừu tượng tinhThanhTien
2.Xây dựng lớp Sach thừa kế lớp DanhMuc với thêm thuộc tính khối lớp và định nghĩa lại
phương thức tinhThanhTien
3.Xây dựng lớp Tapchi thừa kế lớp DanhMuc với thêm thuộc tính thể loại và định nghĩa lại phương thức tinhThanhTien
4.Xây dựng lớp DanhMucSach để
a. Đọc dữ liệu từ file text (cấu trúc file thí sinh tự thiết kế)
b. Ghi dữ liệu xuống file text (cấu trúc file thí sinh tự thiết kế)
c. Thêm 1 sách vào danh mục
d. Thống kê số lượng theo từng loại sách (sách, tạp chí)
5.Thiết kế GUI để giải quyết các yêu cầu của câu 4 Bài 02:
Thí sinh tạo Project có tên HoVaTenSinhVien để Xây dựng chương trình quản lý sách gồm các đối
tượng: sách giáo khoa, tiểu thuyết. Cả 2 loại đều có thông tin chung như sau: Mã Sách, Tên sách, Nhà
xuất bản, năm xuất bản, Số trang, Giá bán, số lượng. - Đối với sách giáo khoa có thêm thông tin về khối lớp;
- Đối với tiểu thuyết có thêm thông tin về thể loại (giả tưởng, hình sự, kinh dị, v.v…);
Thành tiền đối với mỗi loại sách được tính như sau: thành tiền = Giá bán * số lượng
- Đối với sách giáo khoa giảm 50%; - Đối với tiểu thuyết giảm 40%; Yêu cầu:
1. Định nghĩa Interface ItinhTien với phương thức tinhThanhTien; Xây dựng lớp trừu tượng DanhMuc
có các thuộc tính chung và hiện thực phương thức tinhThanhTien
2.Xây dựng lớp SachGiaoKhoa thừa kế lớp DanhMuc thêm thuộc tính {khối lớp} và cài đặt phương thức tinhThanhTien
3.Xây dựng lớp TieuThuyet thừa kế lớp DanhMuc thêm thuộc tính {thể loại} và cài đặt phương thức tinhThanhTien
4.Xây dựng lớp DanhMucSach (mảng các DanhMuc) để thực hiện các chức năng:
a. Đọc dữ liệu từ file text vào mảng (File text do SV tự thiết kế cấu trúc và nội dung để đọc);
b. Ghi thông tin từ mảng xuống file text (Yêu cầu: nội dung ghi xuống file text phải có cấu trúc giống cấu trúc file đã tạo);
c. Thêm 1 sách vào DanhMucSach;
d. Tính tổng tiền của sách giáo khoa xuất bản vào năm cụ thể nào đó;e.Sắp xếp tăng dần theo năm
xuấtbản của Tiểu thuyết.
5.Thiết kế GUI để thực hiện các yêu cầu của câu 4. Bài 03: Câu 1:
https://hfs2.duytan.edu.vn/ndJK184IUkdfn23df675/TestBank/
240116_Cau11_4647_341B6_032010.png Câu 2:
https://hfs2.duytan.edu.vn/ndJK184IUkdfn23df675/TestBank/
240116_Cau12_4647_AB306_032110.png Câu 3:
https://hfs2.duytan.edu.vn/ndJK184IUkdfn23df675/TestBank/
240116_Cau13_4647_88F4E_032143.png Câu 4:
https://hfs2.duytan.edu.vn/ndJK184IUkdfn23df675/TestBank/
240116_Cau14_4647_C8121_032208.png Câu 5:
https://hfs2.duytan.edu.vn/ndJK184IUkdfn23df675/TestBank/
240116_Cau15_4647_48718_032234.png Bài 04: Câu 1:
https://hfs2.duytan.edu.vn/ndJK184IUkdfn23df675/TestBank/
240225_11_5039_FE799_033513.png Câu 2:
https://hfs2.duytan.edu.vn/ndJK184IUkdfn23df675/TestBank/
240225_12_5039_F0A14_033604.png Câu 3:
https://hfs2.duytan.edu.vn/ndJK184IUkdfn23df675/TestBank/
240225_13_5039_ED74F_033655.png Câu 4:
https://hfs2.duytan.edu.vn/ndJK184IUkdfn23df675/TestBank/
240225_14_5039_A113C_033749.png Câu 5:
https://hfs2.duytan.edu.vn/ndJK184IUkdfn23df675/TestBank/
240225_15_5039_B1D3E_033834.png ---o0o---