Java에서 일반 유형으로 작업할 때 일반 유형과 연관된 특정 클래스를 검색하는 것이 유용할 수 있습니다. 다음 예를 고려하십시오.
List<String> stringList = new ArrayList<String>(); List<Integer> integerList = new ArrayList<Integer>();
이 시나리오에서는 이러한 목록과 연관된 실제 클래스 유형, 즉 String 및 Integer에 액세스할 수 있습니다. 다행스럽게도 Java에서는 리플렉션을 사용하여 이 정보를 검색하는 방법을 제공합니다.
getDeclaredField 메서드를 활용하면 일반 목록을 보유하는 클래스의 필드에 액세스할 수 있습니다. 여기에서 필드의 ParameterizedType을 얻고 실제 클래스 정보를 추출할 수 있습니다. 예는 다음과 같습니다.
Field stringListField = testClass.getDeclaredField("stringList"); ParameterizedType stringListType = (ParameterizedType) stringListField.getGenericType(); Class<?> stringListClass = (Class<?>) stringListType.getActualTypeArguments()[0];
이 코드는 Class
목록이 메소드 범위 내에서 정의된 경우 일반 유형을 검색할 필요가 없습니다. 명시적으로 유형을 지정합니다. 이는 메소드의 컨텍스트 내에서 유형 정보를 쉽게 사용할 수 있기 때문입니다.
위 내용은 리플렉션을 사용하여 Java 목록의 일반 유형을 검색하려면 어떻게 해야 합니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!