Java의 Class.forName ("")을 사용하여 클래스 중 하나를로드해야합니다. 문제는 클래스 이름 만 지정하고 클래스 이름을 지정하지 않아도 클래스를로드해야한다는 것입니다.클래스 이름 만 사용하여 클래스를로드하는 방법
이 작동하지만 내 요구 사항에 맞지 않는 예를 들어:
가 Class.forName ("reflection.Person을");
그리고 이것은 내가 필요하지만 작동하지 않습니다 :
가 Class.forName ("사람");
누구나 # 2 작동 방법을 알고 있습니까? 난 그냥 간단한 클래스 이름을 사용해야합니다. 클래스가 존재하는지 확인하기 위해 내 폴더 구조를 살펴볼 수있는 타사 도구가 있습니까? 이것은 실행 가능한 JAR로 배포됩니다.
미리 감사드립니다.
thirdpckg.Person, fourthpckg.Person 등의 클래스가 있다면 어떻게 될까요? 이름없는 패키지에 Person 클래스가 있으면 어떻게 될까요? – emory
전체 클래스 경로 (본질적으로 디렉토리 및 jar 파일의 목록)를 스캔하고 클래스와 같은 파일을 찾습니다. 그런 다음 경로 이름에서 패키지 이름을가집니다. 하지만 일치하는 많은 파일로 끝날 수도 있습니다. – 9000
중복 된 클래스 이름은 허용하지 않습니다. 이들은 단지 고유 한 클래스 이름이 될 것입니다. – Marquinio