czy kasowanie typu Java usuwa mój rodzaj ogólny?

Myślałem, że java wymazuje wymazywanie typów generycznych w czasie kompilacji, ale kiedy przetestuję to sam, zdałem sobie sprawę, że w Bytecode są pewne informacje o rodzajach ogólnych.

oto mój test:

Napisałem 2 klasy:

import java.util.*;
public class Test {
    List integerList;
} 

i

import java.util.*;
public class Test {
    List<Integer> integerList;
} 

skompilowałem obie klasy i gdzieś w klasie generycznej widziałem tę linię

integerList{blah blah}Ljava/util/List;{blah blah}
Signature{blah blah}%Ljava/util/List<Ljava/lang/Integer;>;{blah blah}<init>

w klasie nie generycznej:

integerList{blah blah}Ljava/util/List;{blah blah}<init>

więc oczywiście mam ogólne informacje wewnątrz kodu bajtowego, więc co to za kasowanie?

questionAnswers(5)

yourAnswerToTheQuestion