Nếu tôi có như sau:Generic phương pháp - "chuyển đổi không được kiểm soát để phù hợp với T từ loại" cảnh báo
public interface Foo {
<T extends Foo> T getBlah();
}
public class Bar implements Foo {
public Bar getBlah() {
return this;
}
}
tôi nhận được một cảnh báo trong nhật thực về việc thực hiện 'getBlah' trong lớp Bar:
- Type safety: The return type Bar for getBlah from the type Bar needs unchecked conversion to conform to T from the type
Foo
Làm cách nào để khắc phục sự cố này? Và tại sao tôi nhận được cảnh báo?
Cảm ơn
Bạn đã viết rằng kiểu trả về bởi 'getBlah' phải mở rộng giao diện' Foo'. Nhưng 'Bar' thì không, nó thực hiện nó. – vulkanino
'mở rộng' bao gồm việc triển khai giao diện – Joeblackdev
Một trường hợp quá chung chung. Xem bình luận của Joeblackdev và câu trả lời của Alessandro Santini. – Saintali