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)
-
Câu 1:
Để xây dựng giao diện đồ họa trong Java chúng ta xử dụng thư viện nào sau đây?
A. AWT
B. Swing
C. Java 2D
D. Cả 3 đều đúng
-
Câu 2:
Kết quả in ra của đoạn mã bên dưới là gì? Chọn một câu trả lời
public class Test { public static int switchIt(int x) { int j = 1; switch (x) { case 1: j++; case 2: j++; case 3: j++; case 4: j++; default: j++; } return j + x; } public static void main(String[] args) { System.out.println("value = " + switchIt(4)); } }
A. value = 3
B. value = 4
C. value = 5
D. value = 7
-
Câu 3:
Khái niệm cách start()?
A. Mọi cách thực hiện tác vụ sau khi khởi tạo phải chèn lên cách start. start() bắt đầu việc thực thi của applet.
B. Là cách bắt đầu của applet và chạy song song với applet.
C. cách khởi tạo của applet và chạy song song với applet.
D. Tất cả đều sai.
-
Câu 4:
Câu lệnh khai báo chuẩn cho cách main như thế nào?
A. public static void main(String[] a) {}
B. public static int main(String args) {}
C. public static main(String[] args) {}
D. public static final void main(String[] args) {}
-
Câu 5:
Cách đặt tên nào sau đây là không chính xác?
A. final
B. dem
C. _final
D. $final
-
Câu 6:
Muốn lấy tên mô tả của một locate được biểu diễn trong locate hiện tại thì ta dùng phương thức nào?
A. Static Locate getDefault()
B. Static void setDefault(Locate loc)
C. String getDisplayName()
D. String getDisplayName(Locate loc)
-
Câu 7:
Trình nào cho phép ta chạy applet bên ngoài trình duyệt (browser)?
A. appletviewer
B. www
C. java
D. Tất cả đều đúng
-
Câu 8:
Cài đặt lại layout của một đối tượng Container sử dụng phương thức nào?
A. layout(alayoutManager)
B. setLayout(alayoutManager)
C. add Layout(alayoutManager)
D. set LayoutManager (alayoutManager)
-
Câu 9:
: Có bao nhiêu kiểu dữ liệu ký tự cơ sở trong Java?
A. 1
B. 2
C. 3
D. 4
-
Câu 10:
Cơ chế quản lý bộ nhớ của Java gồm 2 heap, static heap và dynamic heap. Chọn phát biểu đúng?
A. Static heap chứa các định nghĩa class + dữ liệu của các đối tượng + code chương trình
B. Static heap chứa các định nghĩa class + code chương trình
C. Dynamic heap chứa các định nghĩa class + dữ liệu của các đối tượng + code chương trình
D. Dynamic heap chứa các định nghĩa class + code chương trình
-
Câu 11:
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ố
-
Câu 12:
Kiểu trình bày để đặt các Component dưới dạng bảng?
A. CardLayout
B. GridLayout
C. FlowLayout
D. BorderLayout
-
Câu 13:
Mệnh đề nào về Network Socket sau đây là đúng?
A. Là điểm kết nối giữa các máy trên mạng cục bộ hoặc intenet 1
B. Một socket bao gồm địa chỉ máy chủ và cổng kết nối (IP + port ) 2
C. 1, 2 đều đúng
D. 1,2 đều sai
-
Câu 14:
Đoạn mã sau có lỗi biên dịch gì?
public class Person { protected String name; protected int age; public static void main(String[] args) { Person p = new Person(); p.name = "Tom"; System.out.println(p.name); } }
A. Không có lỗi biên dịch.
B. name has protected access.
C. age has protected access.
D. name has public access.
-
Câu 15:
Lựa chọn đáp án phù hợp:
(a) byte (1) 256
(b) char (2) 5000
(c)int (3) 4899.99
(d) short (4)126
(e) double (5) 'F'
A. a-4, b-5, c-2, d-1, e-3
B. a-1, b-2, c-2, d-1, e-3
C. a-1, b-5, c-4, d-4, e-3
D. a-5, b-4, c-1, d-2, e-3
-
Câu 16:
Một hệ thống phân tán được gọi là hệ thống có độ tin cậy cao thì nó phải thỏa mãn yêu cầu nào sau đây?
A. Đảm bảo tính sẵn sàng
B. Đảm bảo tính bảo trì được
C. Đảm bảo tính an toàn
D. Cả 3 đáp án trên
-
Câu 17:
Chọn vòng lặp đúng cú pháp?
A. Int I =2 ; While int I <7 { I ++; System.out.println(“ I la”+i); }
B. Int I =3; While { System.out.println(“ I la”+i); }
C. Int j = 3; for (int k =0; j+k != 10 , j++,k++); System.out.println(“j is”+j+ “k is” +k); }
D. Int j =0; Do { System.out.println(“j is”+ j ++); If(j==3) continue; } while(j<10)
-
Câu 18:
Tên đầu tiên của Java là gì?
A. Java
B. Oak
C. Cafe
D. James golings
-
Câu 19:
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 20:
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
-
Câu 21:
Trong các khai báo sau đâu là khai báo không hợp lệ?
Chọn một câu trả lời
A. int a1[][] = new int[][3];
B. int a2[][] = new int[2][3];
C. int a3[][] = new int[2][];
D. int a4[][] = {{}, {}, {}}
-
Câu 22:
Muốn lấy đối tượng Locate mặc định của hệ thông thì dùng phương thực nào sau đây?
A. Static Locate getDefault()
B. Static void setDefault(Locate loc
C. String getDisplayName()
D. String getDisplayName(Locate loc)
-
Câu 23:
Phạm vi truy cập của một đối tượng khi được khai báo public là gì?
A. Có thể được truy cập từ bất kỳ vị trí nào trong chương trình.
B. Có thể được truy cập từ các lớp trong cùng package.
C. Có thể được truy cập từ các lớp trong cùng package và lớp con nằm trong package khác.
D. Chỉ có thể truy cập từ các phương thức khác trong class đó.
-
Câu 24:
Các đối tượng trong mô hình phân tán được gọi là:
A. Đơn vị phân tán
B. Node trên mô hình phân tán
C. Tài nguyên phân tán
D. Cả 3 đáp án trên
-
Câu 25:
Khối lệnh dưới sẽ cho kết quả là bao nhiêu nếu ta nhập thu = 3?
switch (thu) { case 2: System.out.println(“Van, Toan”); break; case 3: System.out.println(“Hoa, Ly”); break; default: System.out.println(“Ngay nghi”); break; }
A. Van, Toan
B. Hoa, Ly
C. Ngay nghi
D. Không có đáp án đúng
-
Câu 26:
Cách đặt tên nào sau đây là sai?
A. 2word
B. *word
C. main
D. Tất cả đều sai.
-
Câu 27:
Những loại dịch vụ nào cần một hệ thống RPC?
A. Hoạt động đặt tên dịch vụ, hoạt động ràng buộc, Hoạt động đầu cuối
B. Hoạt động bảo mật, trao đổi dữ liệu
C. Hoạt động quản lý bộ nhớ, viết chương trình truy cập vào RPC
D. Tất cả đều đúng
-
Câu 28:
Nếu phương thức của bạn ghi đè một trong số các phương thức của lớp cha, bạn có thể gọi phương thức bị ghi đè thông qua từ khóa nào?
Chọn một câu trả lời
A. parent
B. super
C. this
D. static
-
Câu 29:
Đối tượng nào là đối tượng Component:
A. Button
B. Panel
C. Frame
D. Dialog
-
Câu 30:
Tầng nào thuộc vào kiến trúc của RMI?
A. Stub and Skeleton
B. Remote Refernce
C. Transport Protocol
D. Tất cả
-
Câu 31:
Đoạn mã sau có lỗi biên dịch nào sau?
class Student { protected String name; } public class Man extends Student { public static void main(String[] args) { Man m = new Man(); m.name = "John"; } }
A. name has protected access in Student.
B. Không có lỗi biên dịch
C. class Man has no attribute name.
D. class Man has no attribute or method name.
-
Câu 32:
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 33:
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 34:
Phát biểu nào sau đây sai khi nói về factory object?
A. Cung cấp các đối tượng con cho máy khách
B. Có thể khởi tạo độc lập mà không cần khai báo với rmiregistry
C. Lắng nghe và đáp ứng các yêu cầu khởi tạo và tham chiếu các đối tượng con từ phía máy khách
D. Triệu gọi các đối tượng con theo yêu cầu.
-
Câu 35:
Trong Java, kiểu char biểu diễn bộ mã code nào dưới đây?
A. UTF-8
B. UTF-16
C. UTF-32
D. Tất cả các mã trên
-
Câu 36:
Một lớp trong Java có thể có bao nhiêu lớp cha?
A. 1
B. 2
C. 3
D. 4
-
Câu 37:
Cổng (port) mặc định cho các dịch vụ chạy trên môi trường J2EE là gì?
A. 1099
B. 1024
C. 1025
D. 1098
-
Câu 38:
Điều khiển tương tranh trong hệ thống phân tán là:
A. Quá trình cho phép nhiều giao tác đồng thời mà không xảy ra sự tranh chấp giữa các giao tác
B. Quá trình xử lý lưu trạng thái đối tượng (Object ‘s state) thành các chuỗi byte
C. Quá trình tái cấu trúc lại từ các bytes thành một đối tượng trong chương trình
D. Cả 3 là đúng
-
Câu 39:
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 40:
Để 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 {}
-
Câu 41:
Có bao nhiêu kiểu dữ liệu cơ sở trong Java?
A. 7
B. 8
C. 9
D. 5
-
Câu 42:
Chương trình sau in ra mà hình xâu nào?
public class Main { public static void main(String[] args) { String names[] = { "John", "Anna", "Peter", "Victor", "David" }; names = new String[5]; System.out.println(names[2]); } }
A. Có lỗi biên dịch: use new keyword to create object
B. Peter
C. Anna
D. null
-
Câu 43:
Cho đối tượng con là một đối tượng kết nối cơ sở dữ liệu . Để tạo ra đối tượng statement?
A. Statement stmt = con createStatement(),
B. Statement stmt= createStatement(),
C. createStatement(),
D. Statement stmt = new Statement(),
-
Câu 44:
Đối tượng nào sau đây làm cho BufferedReader đọc từng phương thức readLine của nó có thể đọc một dòng text trả về kiểu String?
A. A File object
B. A Reader object
C. A String object
D. Any object
-
Câu 45:
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 46:
Đoạn mã sau có lỗi biên dịch KHÔNG? Nếu có là lỗi nào sau?
class Student {} public class Man extends Student { public boolean isMan() { return true; } }
A. Không có lỗi biên dịch.
B. Có lỗi biên dịch:class Student is empty.
C. Có lỗi biên dịch:class Man has no constructor.
D. Có lỗi biên dịch:class Student is empty, class Man has no constructor.
-
Câu 47:
Lệnh sau in ra cái gì?
final int ARRAY_SIZE = 5; ARRAY_SIZE = 10; System.out.println("size = " + ARRAY_SIZE);
A. size = 10
B. size = 5
C. Lỗi ở dòng 3
D. Lỗi ở dòng 2
-
Câu 48:
Đâu là đặc tính của giao thức POP?
A. Hỗ trợ thư mục cho mỗi người dùng
B. Định nghĩa kiểu nội dung của thông điệp
C. Phân phối email (Delivering of email)
D. Hỗ trợ maiibox đơn
-
Câu 49:
Phát biểu nào sau đây sai khi nói về “tuần tự hóa đối tượng”?
A. Các đối tượng đó cần cài đặt giao tiếp java.io.Serializable
B. Cung cấp khả năng lưu lại toàn bộ đối tượng xuống 1 tập tin
C. Có thể khôi phục lại trạng thái ban đầu của đối tượng đó bằng toán tử new
D. Có thể khôi phục cả các đối tượng con chứa trong đối tượng cần lưu
-
Câu 50:
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
- 1
- 2
- 3
- 4
- Đề ngẫu nhiên
Phần