300 Câu hỏi trắc nghiệm lập trình Java có đáp án - Phần 4
50 câu hỏi
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;
1
2
3
4
Chọn đáp án B
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());
}
}
Chưa khởi tạo biến myRect
Không có phương thức xử lý
Không có từ khóa static
Chương trình không sai
Chọn đáp án A
Để đảo giá trị của một biến boolean, ta dùng toán tử nào?
!
>>
<<
>>>
Chọn đáp án A
Lệnh if CONDITION { Khối lệnh } có tác dụng gì?
Nếu CONDITION đúng thì thực hiện Khối lệnh, nếu sai thì bỏ qua
Nếu CONDITION sai thì thực hiện Khối lệnh, nếu đúng thì bỏ qua
Tất cả đều sai.
Không có đáp án đúng
Chọn đáp án A
Lệnh if CONDITION {Khối lệnh 1} else {Khối lệnh 2} có tác dụng gì?
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
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
Nếu CONDITION sai thì thực hiện Khối lệnh 1, nếu đúng thì bỏ qua.
Nếu CONDITION đúng thì thực hiện Khối lệnh 2, nếu sai thì bỏ qua
Chọn đáp án A
Biến message sau đây có kết quả gì?
String expletive = “Expletive”;
String PG13 = “deleted”;
String message = expletive.substring(1,3) + PG13;
xpl deleted
Exp edeleted
ple deleted
xpldeleted
Chọn đáp án D
Câu lệnh sau in ra kết quả gì?
int age = 13;
String message = “PG” + age;
PG13
PG 13
PG age
PGage
Chọn đáp án A
Để kiểm tra 2 chuỗi có bằng nhau hay không, sử dụng phương thức nào?
string1== string2
string1 = string2
string1.equals(string2)
string1.equal(string2)
Chọn đáp án C
Lệnh charAt(n) có tác dụng gì?
Tìm kiếm ký tự thứ n
Trả về ký tự thứ n-1
Trả về ký tự thứ n
Trả về ký tự có vị trí chỉ mục n
Chọn đáp án D
Lệnh sau trả về kết quả là bao nhiêu?
String greetings = “Hello”;
char letter = greetings.charAt(0);
H
e
I
o
Chọn đáp án A
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);
Phuong trinh vo nghiem
Phuong trinh co vo so nghiem
-1.6
Lỗi biên dịch
Chọn đáp án C
hố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);
Phuong trinh vo nghiem
Phuong trinh co vo so nghiem
-1.6
Lỗi biên dịch
Chọn đáp án B
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);
Phuong trinh vo nghiem
Phuong trinh co vo so nghiem
-1.6
Lỗi biên dịch
Chọn đáp án A
Trong Javascript sự kiện OnUnload thực hiện khi nào?
Khi bắt đầu chương trình chạy
Khi click chuột
Khi kết thúc một chương trình
Khi di chuyển chuột qua
Chọn đáp án C
Trong Javascript sự kiện Onblur thực hiện khi nào?
Khi một đối tượng trong form mất focus
Khi một đối tượng trong form có focus
Khi di chuyển con chuột qua form
Khi click chuột vào nút lệnh
Chọn đáp án A
Trong Javascript sự kiện OnMouseOver thực hiện khi nào?
Khi một đối tượng trong form mất focus
Khi một đối tượng trong form có focus
Khi di chuyển con chuột qua một đối tượng trong form
Khi click chuột vào nút lệnh
Chọn đáp án C
Trong Javascript sự kiện Onclick xảy ra khi nào?
Khi một đối tượng trong form mất focus
Khi một đối tượng trong form có focus
Khi click chuột vào một đối tượng trong form
Khi click chuột vào nút lệnh
Chọn đáp án D
Trong Javascript sự kiện Onchange thực hiện khi nào?
Khi một đối tượng trong form mất focus
Khi một đối tượng trong form có focus
Xảy ra khi giá trị của một trường trong form được người dùng thay đổi
Khi click chuột vào nút lệnh
Chọn đáp án C
Thẻ <textarea ></texterea> dùng để làm gì?
Tạo một ô text để nhập dữ liệu 1 dòng
Tạo một ô password
Tạo một textbox cho phép nhập liệu nhiều dòng
Tất cả các ý trên
Chọn đáp án C
Thẻ <input type=”Submit” dùng để làm gì?
Tạo một ô text để nhập dữ liệu
Tạo một nút lệnh dùng để gửi tin trong form đi
Tạo một nút lệnh dùng để xóa thông tin trong form
Tất cả các ý trên
Chọn đáp án B
Thẻ <input type=”Radio” …> dùng để làm gì?
Tạo một ô text để nhập dữ liệu
Tạo một nhóm đối tượng chọn nhưng chọn duy nhất
Tạo một cùng có nhiều cột nhiều dòng
Tất cả các ý trên
Chọn đáp án B
Thẻ <input type=”checkbox” …> dùng để làm gì?
Tạo một ô text để nhập dữ liệu
Tạo một nhóm đối tượng chọn được nhiều đối tượng
Tạo một cùng có nhiều cột nhiều dòng
Tất cả ý trên
Chọn đáp án B
Thẻ <input type=”button” …> dùng để làm gì?
Tạo một ô text để nhập dữ liệu
Tạo một nút lệnh lên trên form
Tạo một cùng có nhiều cột nhiều dòng
Tất cả ý kiến trên
Chọn đáp án B
Lệnh lặp for có dạng như thế nào?
for ( biến = Giá trị đầu; Điều kiện; Giá trị tăng)
for ( biến = Giá trị đầu; Giá trị tăng; điều kiện)
for ( biến = Điều kiện; Giá trị tăng; Giá trị cuối)
Tất cả các dạng trên
Chọn đáp án B
Vòng lặp While là dạng vòng lặp?
Không xác định và xét điều kiện rồi mới lặp
Không xác định và lặp rồi mới xét điều kiện
Cả hai dạng trên
Không tồn tại dạng nào ở trên
Chọn đáp án A
Vòng lặp (Do.. while) là dạng vòng lặp?
Không xác định và xét điều kiện rồi mới lặp
Không xác định và lặp rồi mới xét điều kiện
Cả hai dạng trên
Không có dạng nào
Chọn đáp án B
Lệnh break kết hợp với vòng for dùng để?
Ngưng vòng for nếu gặp lệnh này
Không có ý nghĩa trong vòng lặp
Nhảy đến một tập lệnh khác
Không thể kết hợp được
Chọn đáp án A
Hàm alert() dùng để làm gì?
Dùng để hiện một thông điệp
Dùng để hiện một thông báo nhập
Dùng để chuyển đổi số sang chữ
Tất cả các dạng trên
Chọn đáp án A
Thẻ
Dùng để chia trang web ra nhiều phần theo cột
Dùng để chia trang web ra nhiều phần theo dòng
Tất cả dạng trên
Không có ý nào ở trên
Chọn đáp án A
Thẻ <Frameset rows > </frameset>
Dùng để chia trang web ra nhiều phần theo cột
Dùng để chia trang web ra nhiều phần theo dòng
Tất cả dạng trên
Không có ý nào ở trên
Chọn đáp án B
Thẻ <Frame src=” duong dan ”>
Dùng để chèn ảnh
Dùng để lấy dữ liệu từ một trang khác
Tất cả dạng trên
Không có ý nào trong các ý trên
Chọn đáp án B
Hàm prompt(…) trong JavaScript dùng để làm gì?
Hiển thị thông báo nhập thông tin
Hiển thị một thông báo Yes, No
Không phương án nào đúng
Cả hai dạng trên
Chọn đáp án A
Trong JavaScript hàm parseInt() dùng để làm gì?
Chuyển một chuỗi thành số
Chuyển một chuỗi thành số thực
Chuyển một số nguyên thành một chuỗi
Chuyển một chuỗi thành số nguyên
Chọn đáp án D
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?
if (i != 5)
if i <> 5
if i =! 5 then
if (i <> 5)
Chọn đáp án A
Cách viết câu lệnh IF nào sau đây là đúng?
if (i == 5)
if i == 5 then
if i = 5 then
if i = 5
Chọn đáp án A
Có những cách nào viết code JavaScript để chạy trong trang web?
Cả hai dạng viết tệp riêng hoặc viết trong trang HTML
Viết chung với HTML
Viết trên một tệp riêng
Không thuộc dạng nào
Chọn đáp án A
Trong JavaScript sự kiện OnMouseOver xảy ra khi nào?
Khi một đối tượng trong form mất focus
Khi di chuyển con chuột qua một đối tượng trong form
Khi kích chuột vào nút lệnh
Khi kích chuột vào nút lệnh
Chọn đáp án B
Trong JavaScript sự kiện Onclick xảy ra khi nào?
Khi một đối tượng trong form nhận focus
Khi một đối tượng trong form mất focus
Khi click chuột vào một đối tượng trong form
Khi click chuột vào nút lệnh
Chọn đáp án D
JavaScript là ngôn ngữ kịch bản có che dấu được mã nguồn không?
Không dấu được vì các kịch bản chạy phía client
Dấu được vì chương trình hoạt động độc lập với trình duyệt
Hai phát biểu trên đều sai
Hai phát biểu trên đều đúng
Chọn đáp án A
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
array2 = array1;
array2[0] = array3[0];
array2 = array4;
array1=array2;
Chọn đáp án C. Vì: Không thể gán mảng một chiều cho mảng 2 chiều được
Kết quả in ra là gì?
public class foo {
public static void main(String[] args) {
String s;
System.out.println("s=" + s);
}
}
s=NULL
s=null
Lỗi sẽ đưa ra dòng 3
Lỗi sẽ đưa ra dòng 4
Chọn đáp án D. Vì: lỗi sẽ sinh ra ở dòng 4 yêu cầu biến s phải được khởi tạo thì mới được in ra giá trị.
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);
i = 6 and j = 6
i = 5 and j = 5
i = 6 and j = 5
i = 5 and j = 6
Chọn đáp án D. Vì: Khi thực hiện chương trình, mỗi lần lặp sẽ tăng i lên 1 và giảm j đi 1. Vòng lặp sẽ kết thúc khi i=5. Do vậy i=5, j=6
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
2
1
3
4
Chọn đáp án A. Vì: Khi truyền tham số vào cho phương thức có hai cách là: truyền theo kiểu tham trị và truyền theo kiểu tham biến.
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");
}
}
Cài đặt cụ thể phần thân cho phương thức methodA()
Thay thế từ khóa public ở dòng 2 thành private
Xóa từ khóa abstract ở dòng 4
Xóa từ khóa abstract ở dòng 2
Chọn đáp án C. Vì: Đáp án “Xóa từ khóa abstract ở dòng 4” là đúng vì khi xóa từ khóa abstract thì phương thức methodB() sẽ trở thành phương thức thông thường, có phần thân.
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
static
public
private
abstract
Chọn đáp án D. Vì: một lớp kế thừa từ lớp abstract sẽ phải cài đặt tất cả các phương thức abstract trong lớp mà nó kế thừa.
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);
}
}
4
5
6
7
Chọn đáp án B. Vì: + Lệnh System.out.println(names.length); sẽ in ra chiều dài thực của mảng names (=5)
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 {
}
public getNum() { }
public float getNum(double d) { }
public float getNum() { return 4.0f; }
public double getNum(float d) { return 4.0d; }
Chọn đáp án A. Vì: Phương thức này chưa xác định kiểu dữ liệu trả về.
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);
}
}
}
0
Lỗi biên dịch
4
5
Chọn đáp án C. Vì: khi thực thi đoạn mã giá trị của i sẽ lần lượt tăng lên và cuối cùng nhận giá trị 4.
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" );
}
}
}
Finally
Lỗi biên dịch
Đoạn mã thực thi nhưng không in ra kết quả
Lỗi sinh ra trong quá trình chạy
Chọn đáp án A. Vì: Khi thực thi khối lệnh finally sẽ luôn được thực thi và in ra kết quả trong khối lệnh là Finally.
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{}
Compiler error
Runtime Exception
No error
Chọn đáp án C



