JavaScript is required

Đầu ra của chương trình sau là bao nhiêu?

class variable_scope

{

public static void main(String args[])

{

int x;

x = 5;

{

int y = 6;

System.out.print(x + " " + y);

}

System.out.println(x + " " + y);

}

}

Chọn một:

A.

5 6 5 6

B.

5 6 5

C.

runtime error

D.

compilation error

Trả lời:

Đáp án đúng: D


Đoạn code Java này kiểm tra kiến thức về phạm vi biến (variable scope). Biến `x` được khai báo ở đầu hàm `main` và có phạm vi trong toàn bộ hàm. Biến `y` được khai báo bên trong một khối lệnh con (inner block), và chỉ có phạm vi trong khối lệnh đó. Do đó, dòng `System.out.println(x + " " + y);` bên ngoài khối lệnh con sẽ gây ra lỗi biên dịch (compilation error) vì biến `y` không tồn tại trong phạm vi đó.

Câu hỏi liên quan