Thuật ngữ
Từ thuật ngữ chính thức của Mặt trời:
deprecation : Đề cập đến một lớp, giao diện, hàm tạo, phương thức hoặc trường không còn được khuyến nghị và có thể ngừng tồn tại trong phiên bản tương lai.
Từ hướng dẫn cách thức và thời điểm không dùng nữa:
Bạn có thể đã nghe cụm từ "hài hước tự ti" hoặc hài hước làm giảm thiểu tầm quan trọng của người nói. Một lớp hoặc phương thức không dùng nữa là như thế. Nó không còn quan trọng nữa. Trên thực tế, nó không quan trọng đến mức bạn không nên sử dụng nó nữa, vì nó đã được thay thế và có thể ngừng tồn tại trong tương lai.
Các @Deprecated
chú thích đi một bước xa hơn và cảnh báo nguy hiểm:
Một phần tử chương trình được chú thích @Deprecated
là một phần mà các lập trình viên không khuyến khích sử dụng, thường là vì nó nguy hiểm hoặc vì một sự thay thế tốt hơn tồn tại.
Người giới thiệu
Đúng hay sai?
Câu hỏi liệu sử dụng các phương pháp không dùng đúng hay sai sẽ phải được kiểm tra trên cơ sở cá nhân. Dưới đây là TẤT CẢ các trích dẫn mà từ "không dùng nữa" xuất hiện trong Ấn bản Java hiệu quả thứ 2 :
Mục 7: Tránh các công cụ quyết toán : Các phương pháp duy nhất tuyên bố đảm bảo quyết toán là System.runFinalizersOnExit
và kết nghĩa xấu xa của nóRuntime.runFinalizersOnExit
. Những phương pháp này rất thiếu sót và đã bị phản đối.
Mục 66: Đồng bộ hóa quyền truy cập vào dữ liệu có thể thay đổi được chia sẻ : Các thư viện cung cấp Thread.stop
phương thức, nhưng phương thức này không được chấp nhận từ lâu vì nó vốn không an toàn - việc sử dụng nó có thể dẫn đến hỏng dữ liệu.
Mục 70: An toàn luồng tài liệu :System.runFinalizersOnExit
Phương thức này là luồng thù địch và không được dùng nữa.
Mục 73: Tránh các nhóm luồng : Chúng cho phép bạn áp dụng một số Thread
nguyên thủy nhất định cho một loạt các luồng cùng một lúc. Một vài trong số những người nguyên thủy này đã không được chấp nhận và phần còn lại được sử dụng không thường xuyên. [...] Các nhóm chủ đề đã lỗi thời.
Vì vậy, ít nhất là với tất cả các phương pháp trên, rõ ràng là sai khi sử dụng chúng, ít nhất là theo Josh Bloch.
Với các phương pháp khác, bạn phải xem xét các vấn đề một cách riêng lẻ và hiểu TẠI SAO chúng bị phản đối, nhưng nói chung, khi quyết định phản đối là hợp lý, nó sẽ có xu hướng nghiêng về sai hơn là tiếp tục sử dụng chúng.
Câu hỏi liên quan
1955 Volkswagen Beetle
ngay cả khi bạn được cung cấpCorvette Stingray
miễn phí không? (0: