내 프로그램에서 List가 구현하는 클래스 유형을 알아 내려고하고 있습니다.필드가 어떤 목록 유형인지 알아보십시오
JSON 데이터를 가져 와서 루트 객체에 배치하고 있습니다. 그런 다음이 루트 객체에는 JSON 데이터의 각 요소를 저장하는 List가 있습니다.
예를 들어 내가
List<Person> people
List<Location> locations
그래서 내가 할 수 있기를 원하는 루트 클래스의 각 필드를 통해 루프가의 선언 필드가 루트가, 클래스의 종류를 목록을 잡아 그 나는 현재를보고, 그 클래스에 대한 특정 함수를 호출한다. (특정 함수를 말할 때 인터페이스를 구현하는 클래스 유형을 반환하고 목록을 분리하기 위해 구현하는 함수를 실행할 수있는 인터페이스를 선언해야합니다.
Class<?> clss = fieldObj.getType()
(여기서 fieldObj는 유형 Field)는 목록임을 반환합니다.이 필드의 유형은 어떻게 얻을 수 있습니까?
에 대한 코드를 인쇄하면 유형에 따라 무엇을 의미합니까 어떻게 봐? Implemenation'ArrayList' 대'LinkedList' 또는 제네릭 타입'Person' 대'Location'? –
[이 답변보기 (http://stackoverflow.com/a/11264363/1065197). –