Có một vài tệp * .java trong cây nguồn của Scala trong thư mục scala.runtime.Mục đích của các tệp Java này trong scala.runtime là gì?
Các tệp đó dường như rất đơn giản, e. g. DoubleRef.java
trông giống như sau:
package scala.runtime;
public class DoubleRef implements java.io.Serializable {
private static final long serialVersionUID = 8304402127373655534L;
public double elem;
public DoubleRef(double elem) { this.elem = elem; }
public String toString() { return java.lang.Double.toString(elem); }
}
Có lý do nào khiến các lớp đó không được xác định trong Scala không?
Chỉ cần đoán. Không có cấu trúc Scala nào sẽ biên dịch thành trường tĩnh riêng tư, và có lẽ điều này được yêu cầu bởi java.io.Serializable để hoạt động chính xác? –
@Brian: Thay vào đó, bạn sẽ sử dụng chú thích '@ SerialVersionUID'. – soc