300 Câu hỏi trắc nghiệm lập trình Java có đáp án và lời giải chi tiết
Tổng hợp 300 câu hỏi trắc nghiệm Java có đáp án đầy đủ + lời giải chi tiết nhằm giúp các bạn dễ dàng ôn tập lại toàn bộ các kiến thức. Để ôn tập hiệu quả các bạn có thể ôn theo từng phần trong bộ câu hỏi này bằng cách trả lời các câu hỏi và xem lại đáp án và lời giải chi tiết. Sau đó các bạn hãy chọn tạo ra đề ngẫu nhiên để kiểm tra lại kiến thức đã ôn.
Chọn hình thức trắc nghiệm (50 câu/60 phút)
Chọn phần
-
Câu 1:
Có bao nhiêu đổi tham chiếu của đối tượng mảng và biến tồn tại sau khi thực hiện khối
lệnh?String[] students = new String[10]; String studentName = “Peter Parker”; students[0] = studentName; studentName = null;
A. 1
B. 2
C. 3
D. 4
-
Câu 2:
Cho khối lệnh sau,giả thiết lớp Rectangle đ được định nghĩa và không sai. Khi chạy, chương trình báo lỗi là do:
public class SomeWrong { public static void main(String[] args) { Rectangle myRect; myRect.width = 40; myRect.height = 50; System.out.println(“Dien tich hinh chu nhat: “ + myRect.area()); } }
A. Chưa khởi tạo biến myRect
B. Không có phương thức xử lý
C. Không có từ khóa static
D. Chương trình không sai
-
Câu 3:
Để đảo giá trị của một biến boolean, ta dùng toán tử nào?
A. !
B. >>
C. <<
D. >>>
-
Câu 4:
Lệnh if CONDITION { Khối lệnh } có tác dụng gì?
A. Nếu CONDITION đúng thì thực hiện Khối lệnh, nếu sai thì bỏ qua
B. Nếu CONDITION sai thì thực hiện Khối lệnh, nếu đúng thì bỏ qua
C. Tất cả đều sai.
D. Không có đáp án đúng
-
Câu 5:
Lệnh if CONDITION {Khối lệnh 1} else {Khối lệnh 2} có tác dụng gì?
A. Nếu CONDITION đúng thì thực hiện Khối lệnh 1, nếu sai thì thực hiện Khối lệnh 2
B. Nếu CONDITION sai thì thực hiện Khối lệnh 1, nếu đúng thì thực hiện Khối lệnh 2
C. Nếu CONDITION sai thì thực hiện Khối lệnh 1, nếu đúng thì bỏ qua.
D. Nếu CONDITION đúng thì thực hiện Khối lệnh 2, nếu sai thì bỏ qua
-
Câu 6:
Biến message sau đây có kết quả gì?
String expletive = “Expletive”; String PG13 = “deleted”; String message = expletive.substring(1,3) + PG13;
A. xpl deleted
B. Exp edeleted
C. ple deleted
D. xpldeleted
-
Câu 7:
Câu lệnh sau in ra kết quả gì?
int age = 13; String message = “PG” + age;
A. PG13
B. PG 13
C. PG age
D. PGage
-
Câu 8:
Để kiểm tra 2 chuỗi có bằng nhau hay không, sử dụng phương thức nào?
A. string1== string2
B. string1 = string2
C. string1.equals(string2)
D. string1.equal(string2)
-
Câu 9:
Lệnh charAt(n) có tác dụng gì?
A. Tìm kiếm ký tự thứ n
B. Trả về ký tự thứ n-1
C. Trả về ký tự thứ n
D. Trả về ký tự có vị trí chỉ mục n
-
Câu 10:
Lệnh sau trả về kết quả là bao nhiêu?
String greetings = “Hello”; char letter = greetings.charAt(0);
A. H
B. e
C. I
D. o
-
Câu 11:
Khối lệnh sau ra kết quả là bao nhiêu với a = 5, b = 8?
double a, b; if (a == 0) if (b != 0) System.out.println(“Phuong trinh vo nghiem”); else System.out.println(“Phuong trinh co vo so nghiem”); else System.out.println(-b/a);
A. Phuong trinh vo nghiem
B. Phuong trinh co vo so nghiem
C. -1.6
D. Lỗi biên dịch
-
Câu 12:
Khối lệnh sau ra kết quả là bao nhiêu với a = 0, b = 0?
double a, b; if (a == 0) if (b != 0) System.out.println(“Phuong trinh vo nghiem”); else System.out.println(“Phuong trinh co vo so nghiem”); else System.out.println(-b/a);
A. Phuong trinh vo nghiem
B. Phuong trinh co vo so nghiem
C. -1.6
D. Lỗi biên dịch
-
Câu 13:
Khối lệnh sau ra kết quả là bao nhiêu với a = 0, b = 8?
double a, b; if (a == 0) if (b != 0) System.out.println(“Phuong trinh vo nghiem”); else System.out.println(“Phuong trinh co vo so nghiem”); else System.out.println( - b / a);
A. Phuong trinh vo nghiem
B. Phuong trinh co vo so nghiem
C. -1.6
D. Lỗi biên dịch
-
Câu 14:
Trong Javascript sự kiện OnUnload thực hiện khi nào?
A. Khi bắt đầu chương trình chạy
B. Khi click chuột
C. Khi kết thúc một chương trình
D. Khi di chuyển chuột qua
-
Câu 15:
Trong Javascript sự kiện Onblur thực hiện khi nào?
A. Khi một đối tượng trong form mất focus
B. Khi một đối tượng trong form có focus
C. Khi di chuyển con chuột qua form
D. Khi click chuột vào nút lệnh
-
Câu 16:
Trong Javascript sự kiện OnMouseOver thực hiện khi nào?
A. Khi một đối tượng trong form mất focus
B. Khi một đối tượng trong form có focus
C. Khi di chuyển con chuột qua một đối tượng trong form
D. Khi click chuột vào nút lệnh
-
Câu 17:
Trong Javascript sự kiện Onclick xảy ra khi nào?
A. Khi một đối tượng trong form mất focus
B. Khi một đối tượng trong form có focus
C. Khi click chuột vào một đối tượng trong form
D. Khi click chuột vào nút lệnh
-
Câu 18:
Trong Javascript sự kiện Onchange thực hiện khi nào?
A. Khi một đối tượng trong form mất focus
B. Khi một đối tượng trong form có focus
C. Xảy ra khi giá trị của một trường trong form được người dùng thay đổi
D. Khi click chuột vào nút lệnh
-
Câu 19:
Thẻ <textarea ></texterea> dùng để làm gì?
A. Tạo một ô text để nhập dữ liệu 1 dòng
B. Tạo một ô password
C. Tạo một textbox cho phép nhập liệu nhiều dòng
D. Tất cả các ý trên
-
Câu 20:
Thẻ <input type=”Submit” dùng để làm gì?
A. Tạo một ô text để nhập dữ liệu
B. Tạo một nút lệnh dùng để gửi tin trong form đi
C. Tạo một nút lệnh dùng để xóa thông tin trong form
D. Tất cả các ý trên
-
Câu 21:
Thẻ <input type=”Radio” …> dùng để làm gì?
A. Tạo một ô text để nhập dữ liệu
B. Tạo một nhóm đối tượng chọn nhưng chọn duy nhất
C. Tạo một cùng có nhiều cột nhiều dòng
D. Tất cả các ý trên
-
Câu 22:
Thẻ <input type=”checkbox” …> dùng để làm gì?
A. Tạo một ô text để nhập dữ liệu
B. Tạo một nhóm đối tượng chọn được nhiều đối tượng
C. Tạo một cùng có nhiều cột nhiều dòng
D. Tất cả ý trên
-
Câu 23:
Thẻ <input type=”button” …> dùng để làm gì?
A. Tạo một ô text để nhập dữ liệu
B. Tạo một nút lệnh lên trên form
C. Tạo một cùng có nhiều cột nhiều dòng
D. Tất cả ý kiến trên
-
Câu 24:
Lệnh lặp for có dạng như thế nào?
A. for ( biến = Giá trị đầu; Điều kiện; Giá trị tăng)
B. for ( biến = Giá trị đầu; Giá trị tăng; điều kiện)
C. for ( biến = Điều kiện; Giá trị tăng; Giá trị cuối)
D. Tất cả các dạng trên
-
Câu 25:
Vòng lặp While là dạng vòng lặp?
A. Không xác định và xét điều kiện rồi mới lặp
B. Không xác định và lặp rồi mới xét điều kiện
C. Cả hai dạng trên
D. Không tồn tại dạng nào ở trên
-
Câu 26:
Vòng lặp (Do.. while) là dạng vòng lặp?
A. Không xác định và xét điều kiện rồi mới lặp
B. Không xác định và lặp rồi mới xét điều kiện
C. Cả hai dạng trên
D. Không có dạng nào
-
Câu 27:
Lệnh break kết hợp với vòng for dùng để?
A. Ngưng vòng for nếu gặp lệnh này
B. Không có ý nghĩa trong vòng lặp
C. Nhảy đến một tập lệnh khác
D. Không thể kết hợp được
-
Câu 28:
Hàm alert() dùng để làm gì?
A. Dùng để hiện một thông điệp
B. Dùng để hiện một thông báo nhập
C. Dùng để chuyển đổi số sang chữ
D. Tất cả các dạng trên
-
Câu 29:
Thẻ
A. Dùng để chia trang web ra nhiều phần theo cột
B. Dùng để chia trang web ra nhiều phần theo dòng
C. Tất cả dạng trên
D. Không có ý nào ở trên
-
Câu 30:
Thẻ <Frameset rows > </frameset>
A. Dùng để chia trang web ra nhiều phần theo cột
B. Dùng để chia trang web ra nhiều phần theo dòng
C. Tất cả dạng trên
D. Không có ý nào ở trên
-
Câu 31:
Thẻ <Frame src=” duong dan ”>
A. Dùng để chèn ảnh
B. Dùng để lấy dữ liệu từ một trang khác
C. Tất cả dạng trên
D. Không có ý nào trong các ý trên
-
Câu 32:
Hàm prompt(…) trong JavaScript dùng để làm gì?
A. Hiển thị thông báo nhập thông tin
B. Hiển thị một thông báo Yes, No
C. Không phương án nào đúng
D. Cả hai dạng trên
-
Câu 33:
Trong JavaScript hàm parseInt() dùng để làm gì?
A. Chuyển một chuỗi thành số
B. Chuyển một chuỗi thành số thực
C. Chuyển một số nguyên thành một chuỗi
D. Chuyển một chuỗi thành số nguyên
-
Câu 34:
Thực hiện kiểm tra nếu biến “i” không bằng 5, câu lệnh nào là đúng?
A. if (i != 5)
B. if i <> 5
C. if i =! 5 then
D. if (i <> 5)
-
Câu 35:
Cách viết câu lệnh IF nào sau đây là đúng?
A. if (i == 5)
B. if i == 5 then
C. if i = 5 then
D. if i = 5
-
Câu 36:
Có những cách nào viết code JavaScript để chạy trong trang web?
A. Cả hai dạng viết tệp riêng hoặc viết trong trang HTML
B. Viết chung với HTML
C. Viết trên một tệp riêng
D. Không thuộc dạng nào
-
Câu 37:
Trong JavaScript sự kiện OnMouseOver xảy ra khi nào?
A. Khi một đối tượng trong form mất focus
B. Khi di chuyển con chuột qua một đối tượng trong form
C. Khi kích chuột vào nút lệnh
D. Khi một đối tượng trong form nhận focus
-
Câu 38:
Trong JavaScript sự kiện Onclick xảy ra khi nào?
A. Khi một đối tượng trong form nhận focus
B. Khi một đối tượng trong form mất focus
C. Khi click chuột vào một đối tượng trong form
D. Khi click chuột vào nút lệnh
-
Câu 39:
JavaScript là ngôn ngữ kịch bản có che dấu được mã nguồn không?
A. Không dấu được vì các kịch bản chạy phía client
B. Dấu được vì chương trình hoạt động độc lập với trình duyệt
C. Hai phát biểu trên đều sai
D. Hai phát biểu trên đều đúng
-
Câu 40:
Cho các khai báo sau:
1: byte [] array1, array2[];
2: byte array3 [][];
3: byte[][] array4;
Nếu các mảng trên đều được khởi tạo thì lệnh nào sau sẽ gặp lỗi?
Chọn một câu trả lời
A. array2 = array1;
B. array2[0] = array3[0];
C. array2 = array4;
D. array1=array2;
-
Câu 41:
Kết quả in ra là gì?
public class foo { public static void main(String[] args) { String s; System.out.println("s=" + s); } }
A. s=NULL
B. s=null
C. Lỗi sẽ đưa ra dòng 3
D. Lỗi sẽ đưa ra dòng 4
-
Câu 42:
Kết quả in ra của đoạn mã trên là gì?
int i = 1, j = 10; do { if (i++>--j) { continue; } } while ( i < 5 ); System.out.println("i = " + i + "and j = " + j);
A. i = 6 and j = 6
B. i = 5 and j = 5
C. i = 6 and j = 5
D. i = 5 and j = 6
-
Câu 43:
Có mấy cách để truyền tham số vào cho một phương thức?
Chọn một câu trả lời
A. 2
B. 1
C. 3
D. 4
-
Câu 44:
Làm thế nào để đoạn mã trên biên dịch thành công?
public abstract class Test { public abstract void methodA(); public abstract void methodB() { System.out.printIn("Hello"); } }
A. Cài đặt cụ thể phần thân cho phương thức methodA()
B. Thay thế từ khóa public ở dòng 2 thành private
C. Xóa từ khóa abstract ở dòng 4
D. Xóa từ khóa abstract ở dòng 2
-
Câu 45:
Một lớp kế thừa từ lớp abstract thì từ khóa nào sau đây được sử dụng để cài đặt các phương thức của lớp kế thừa này?
Chọn một câu trả lời
A. static
B. public
C. private
D. abstract
-
Câu 46:
Chương trình sau in ra màn hình số mấy? Chọn một câu trả lời
public class Main { public static void main(String[] args) { String names[] = { "John", "Anna", "Peter", "Victor", "David" }; System.out.println(names.length); } }
A. 4
B. 5
C. 6
D. 7
-
Câu 47:
Phương thức nào đưa vào dòng 6 sẽ sinh lỗi?
Chọn một câu trả lời
class Super { public float getNum() { return 3.0f; } } public class Sub extends Super { }
A. public getNum() { }
B. public float getNum(double d) { }
C. public float getNum() { return 4.0f; }
D. public double getNum(float d) { return 4.0d; }
-
Câu 48:
Giá trị cuối cùng của i tại dòng 7 là bao nhiêu?
public class Test { public static void main(string args[]) { int i = 0; while (true) { if (i == 4) break; ++i; System.out.println(i); } } }
A. 0
B. Lỗi biên dịch
C. 4
D. 5
-
Câu 49:
Kết quả in ra của đoạn mã trên là gì?
Chọn một câu trả lời
public class Foo { public static void main(String[] args) { try { return; } finally { System.out.println( "Finally" ); } } }
A. Finally
B. Lỗi biên dịch
C. Đoạn mã thực thi nhưng không in ra kết quả
D. Lỗi sinh ra trong quá trình chạy.
-
Câu 50:
Kết quả sau khi biên dịch mã: class A { public static void main(String[] args) {A a = new B();}} class B extends A{}
A. Compiler error
B. Runtime Exception
C. No error
- 1
- 2
- 3
- 4
- Đề ngẫu nhiên
Phần