Tôi mới bắt đầu sử dụng @NotNullchú thích với Java 8 và nhận được một số kết quả không mong muốn.
Tôi có một phương pháp như thế này:
public List<Found> findStuff(@NotNull List<Searching> searchingList) {
... code here ...
}
Tôi đã viết một bài kiểm tra JUnit chuyển qua giá trị null cho đối số searchList. Tôi đã mong đợi một số loại lỗi xảy ra nhưng nó đã đi qua như thể chú thích không có ở đó. Đây có phải là hành vi dự kiến? Từ những gì tôi hiểu, điều này là để cho phép bạn bỏ qua việc viết mã kiểm tra null.
Một lời giải thích về chính xác những gì @NotNull được cho là sẽ được đánh giá cao.
@NotNullchỉ là một chú thích. Chú thích không làm gì cả. Họ cần một bộ xử lý chú thích vào thời gian biên dịch hoặc một cái gì đó xử lý nó khi chạy.