Czy istnieje sposób przechowywania typowego parametru przekazywanego w trakcie budowy do parametru. Mój cel:Klasa klasy ogólnej w polu w języku Java
class generic<T> {
Class<T> type;
public generic() {
super();
this.type = //Something that gets class from T
}
}
Co mam obecnie robi to:
class generic<T> {
Class<T> type;
public generic(Class<T> type) {
super();
this.type = type;
}
}
Wydaje się głupie, aby określić klasę dwa razy, ale nie jestem pewien jak inaczej to zrobić. Myślę, że to może być możliwe dzięki refleksji, ale jeszcze tego nie zbadałem. Czy istnieje bardziej prosty sposób? Jeśli nie (na marginesie), dlaczego utrata informacji?
Jeśli używasz generycznych, dlaczego chcesz/potrzebujesz klasy? Ma to dziwny zapach. – Instantsoup
Zgoda, nie powinieneś potrzebować dostępu do ogólnego parametru w czasie wykonywania, ponieważ generics to tylko funkcja typu kompilacji ... –