Trong một cuộc phỏng vấn gần đây tôi đã có với một công ty phần mềm khá uy tín, tôi đã vấp phải cố gắng cung cấp một lời giải thích hợp lý cho một câu hỏi Scala dường như tầm thường. Hãy xem xét những điều sau đây:Điều gì sẽ xảy ra với một phép gán biến khi tôi gọi một phương thức trả về một cá thể của một lớp chữ thường giữ biến được nói?
case class Person(var age: Int)
def person = new Person(10)
person.age = 3
println(person)
Đây là những gì được trả về bởi các println
tuyên bố:
Person(10)
Câu hỏi đặt ra là tại sao điều này và những gì đang xảy ra khi tôi gán 3
-person.age
?
Câu trả lời hay nhất có lẽ là: "chỉ không sử dụng các vars trong một lớp chữ". –