Trước hết, tôi chỉ biết về các khái niệm cơ bản về Java. Bây giờ tôi có các tình huống sau:Làm thế nào để thiết lập các ràng buộc về các kiểu generic trong Java?
Tôi có một lớp generic:
public class ListObject<T>
{
// fields
protected T _Value = null;
// ..
}
Bây giờ tôi muốn làm điều gì đó như sau:
ListObject<MyClass> foo = new ListObject<MyClass>();
ListObject<MyClass> foo2 = new ListObject<MyClass>();
foo.compareTo(foo2);
Vấn đề là, làm thế nào tôi có thể xác định .compareTo() Phương pháp trong khi T là chung? Tôi đoán tôi đã bằng cách nào đó để thực hiện một ràng buộc trên T chung để nói rằng T thực hiện một giao diện cụ thể (có thể so sánh, nếu có tồn tại).
Có ai có thể cung cấp cho tôi một mẫu mã nhỏ không?
Tôi sẽ dính vào ListObject cho thời điểm này. –
citronas
Đồng thời kiểm tra các chủ đề liên quan: http://stackoverflow.com/questions/2064169/what-does-this-class-declaration-mean-in-java/2072820, thảo luận về sự cần thiết cho ký tự đại diện của biểu mẫu: super T> – sateesh