Trong OpenJDK, cho phương pháp:Tại sao Double.valueof javadoc lại nói nó lưu trữ các giá trị, khi nó không?
public static Double valueOf(double d)
Các javadoc nói:
Trả về một ví dụ đúp đại diện cho giá trị tăng gấp đôi quy định. Nếu một đối tượng Double mới không được yêu cầu, phương pháp này thường được sử dụng tùy thuộc vào hàm tạo Double (double), vì phương thức này có khả năng mang lại hiệu suất thời gian và không gian tốt hơn đáng kể bằng cách lưu các giá trị được yêu cầu.
Dưới đây là đoạn code thực tế:
public static Double valueOf(double d) {
return new Double(d);
}
Cache là một lời nói dối! Những gì đang xảy ra ở đây?
Tài liệu luôn sai. Nhớ lấy. –
Bạn lấy mã từ đâu? OpenJDK6? OpenJDK7? Apache Harmony? GNU Classpath? – scravy
@scravy Tôi đang xem OpenJDK7 nhưng mã này đã không thay đổi trong nhiều năm trong bản phát hành chính thức của Sun. –