Hier ist der Code:Generics Typ Löschung in Java
public class Main {
public static void main(String[] args) {
Gen<Integer> g = new Gen<Integer>(5);
System.out.println(g.getClass());
System.out.println(g.ob.getClass());
}
}
class Gen<T> {
T ob;
public Gen(T x) {
ob = x;
}
}
Und hier ist der Ausgang
class Gen // This I understand
class java.lang.Integer // But if type erasure is happening, shouldn't this be java.lang.Object?
ich es, dass Typ-Parameter T
wird zur Laufzeit gelöscht, aber warum dann ist der Typ-Parameter ob
Überleben zur Laufzeit?
Sie müssen anfangen, zwischen Variablen, Referenzen und Objekten zu unterscheiden, –
Wenn 'Car c = new Mercedes();' Was denken Sie, sollte Ergebnis von 'c.getClass()' sein und warum? – Pshemo
danke an alle für die antwort ich bekomme es jetzt – Ramanlfc