Đoạn mã Scala sau không thể biên dịch trong Scala 2.7.7, với lỗi không khớp loại "tìm thấy: Null (null) bắt buộc: T" trên dòng cuối cùng :Lỗi không khớp loại Scala 2.7.x khi chuyển null cho kiểu tham chiếu
/**
* @param [T] key type
*/
class Key[T]
class Entry[T](val k: Key[T], val v: T)
def makeEntry[T <: AnyRef] = new Entry[T](new Key[T], null)
tôi hoàn toàn nhận thức được sự tà ác của null, nhưng nó đủ để nói rằng tôi thực sự cần phải làm điều này. Đây có phải là lỗi trình biên dịch hoặc lỗi lập trình không?
Chỉnh sửa: Chỉ cần làm rõ, T là thông số kiểu và không phải là loại cụ thể. Tôi đã không nhận ra điều này là mơ hồ trong câu hỏi ban đầu cho đến khi tôi đọc phản ứng của Carl cẩn thận hơn.
FYI: Mã này hoạt động trong 2,8 –