Известно, что во время рантайма конкретный дженерик-тип неизвестен, т.к. стирается (type erasure), из-за этого даже в, к примеру в Scala, приспособлены отдельные костыли.
Однако, вот Java-код, возвращающий информацию о том, что в списке содержатся не какие-то элементы, а именно строки. Объясните, в чем подвох?
import java.lang.reflect.Field;
import java.lang.reflect.ParameterizedType;
import java.lang.reflect.Type;
import java.util.Arrays;
import java.util.List;
public class Main {
public List<String> stringList = Arrays.asList("one", "two");
public static void main(String[] args) throws Exception {
Field field = Main.class.getField("stringList");
Type genericFieldType = field.getGenericType();
if (genericFieldType instanceof ParameterizedType) {
ParameterizedType aType = (ParameterizedType) genericFieldType;
Type[] fieldArgTypes = aType.getActualTypeArguments();
for (Type fieldArgType : fieldArgTypes) {
Class fieldArgClass = (Class) fieldArgType;
System.out.println("fieldArgClass = " + fieldArgClass);
}
}
}
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Приложение будет передавать множество файлов размером в 2-10 мегабайт и мне важно что бы они были с изначальным названиемДля этого нужно отправлять...
Как загружать аватарку в приложение, где хранить и как отображать? аватарка прилетает с сервера, через ретрофитМожно пожалуйста с нуля, по подробнее...
Программа на swing, которая предлагает пользователю загрузить n файлов excel и затем выдает итоговый отчет в виде одного excel файла
Предположим что есть байт b = 63В битах это будет 0011 1111