Có cách nào có thể tránh loại xóa và truy cập thông số loại không?Tránh loại tẩy xóa Java
public class Foo<T extends Enum<?> & Bar> {
public Foo() {
// access the template class here?
// i.e. :
baz(T.class); // obviously doesn't work
}
private void baz(Class<T> qux) {
// do stuff like
T[] constants = qux.getEnumConstants();
...
}
}
Tôi cần biết về T
và làm những việc với nó. Là nó có thể, và nếu như vậy, làm thế nào nó có thể được thực hiện mà không cần đi qua trong lớp trong constructor hoặc bất cứ nơi nào ngoài các tham số?
EDIT: Mục đích chính của câu hỏi này là để tìm hiểu xem có bất kỳ cách thực tế nào xung quanh loại xóa.
+1 Yep - Đây là một giải pháp dựa trên sự phản chiếu khác nếu bạn thích lớp con để truyền đối tượng 'Lớp'. –