JavaScript is required

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
Trả lời:

Đáp án đúng: B


Sau khi thực hiện đoạn code trên: 1. `String[] students = new String[10];` Khởi tạo một mảng `students` gồm 10 phần tử kiểu String. Lúc này, `students` là một đối tượng mảng, và nó có một tham chiếu đến vùng nhớ chứa mảng này. 2. `String studentName = "Peter Parker";` Khởi tạo một biến `studentName` kiểu String và gán cho nó giá trị "Peter Parker". Biến `studentName` có một tham chiếu đến vùng nhớ chứa chuỗi "Peter Parker". 3. `students[0] = studentName;` Gán giá trị của `studentName` (là tham chiếu đến chuỗi "Peter Parker") cho phần tử đầu tiên của mảng `students`. Bây giờ, cả `students[0]` và `studentName` đều tham chiếu đến cùng một đối tượng chuỗi "Peter Parker". 4. `studentName = null;` Gán `null` cho `studentName`. Điều này có nghĩa là `studentName` không còn tham chiếu đến đối tượng "Peter Parker" nữa. Tuy nhiên, `students[0]` vẫn tham chiếu đến đối tượng chuỗi "Peter Parker". Vậy, sau khi thực hiện xong đoạn code, ta có: * Mảng `students` (1 tham chiếu). * Phần tử `students[0]` vẫn tham chiếu đến chuỗi "Peter Parker" (1 tham chiếu). * Biến `studentName` không còn tham chiếu đến đối tượng nào (tham chiếu null). Tổng cộng có 2 tham chiếu đến đối tượng mảng và biến còn tồn tại.

Câu hỏi liên quan