Loại tham số thường là một lớp giao dịch với đối tượng khác mà không có loại thú vị. Kiểu có thể được định nghĩa bằng cách sử dụng "tên" biểu tượng và sau đó được truyền khi thể hiện của lớp được tạo ra.
Ví dụ:
class MyClass<T> {
private T obj;
public MyClass<T>(T obj) {
this.obj = obj;
}
public int getId() {
return obj.hashCode();
}
}
Trong ví dụ trên MyClass
kết thúc tốt đẹp đối tượng của bất kỳ loại và thực hiện phương pháp của nó hashCode()
sử dụng thực tế là phương pháp này luôn luôn tồn tại.
Sau đây là cách lớp này được sử dụng:
int sid = new MyClass<String>("aaaa").hashCode();
Hãy chú ý rằng bạn không thể nói new MyClass<String>(123)
: thực tế là đối tượng được tạo ra với tham số String
dictates loại lập luận constructor.
Quay lại ví dụ Collection<String>
có nghĩa là "thu thập chuỗi". Điều này có nghĩa là bạn không thể thêm đối tượng thuộc loại khác vào bộ sưu tập này.
Làm thế nào về đọc câu tiếp theo trong liên kết mà bạn đã đưa ra: "Bộ sưu tập khai biểu thị một kiểu tham số, đó là một instantiation của các loại sưu tập chung, nơi nơi chủ E đã được thay thế bằng loại chuỗi cụ thể "? –
@JBNizet, Vâng, sự nhầm lẫn của tôi xuất phát từ loại instantiation 'LinkedList'. Bình luận của bạn dưới đây làm rõ nó cho tôi. –
wulfgarpro