0

Java SE 8 Oracle Certified Associate 1Z0-808 - #13

1. Câu hỏi

2. Phân tích

Đây là 1 câu hỏi không quá khó nếu chịu khó đọc kỹ câu hỏi.

Khởi tạo đối tượng Message

msg = "Happy New Year!"

Phân tích kỹ đoạn code nó truyền đối tượng Message vào, bản chất của nó sẽ tạo 1 đối tượng mới tên m, cùng trỏ vào địa chỉ của đối tượng obj ở hàm main.

Code dòng 6 m = new Message();. Sau lệnh này 2 biến objm sẽ trỏ vào 2 đối tượng khác nhau, khi đó giá trị m thay đổi không ảnh hưởng giá trị obj ở bên ngoài.

Vậy sau khi thoát khỏi hàm change(), giá trị biến obj không thay đổi.

Lưu ý: nếu không có code dòng 6, thì giá trị biến obj sẽ bị thay đổi sau hàm change()

    public static void change(Message m) { //Line n5
        m = new Message(); //Line n6
        m.msg = "Happy Holidays!"; //Line n7
    }

Đáp án: image.png

3. Kết luận

Bạn có thể gõ code vào IDE để chạy lại và kiểm tra Source cho câu hỏi


All Rights Reserved

Viblo
Let's register a Viblo Account to get more interesting posts.