클래스 는 java.lang 패키지의 클래스입니다. 이 클래스의 인스턴스는 프로그램이 다른 클래스의 인스턴스를 생성하거나 다른 클래스의 객체에 대한 내부 정보를 얻는 데 도움이 될 수 있습니다.
객체를 생성하는 가장 일반적인 방법은 new 연산자와 클래스 생성자를 사용하는 것입니다. 실제로 Class 객체를 사용하여 특정 클래스의 인스턴스를 가져올 수도 있습니다.
(1) Class의 클래스 메소드를 사용하여 특정 클래스(className 매개변수로 지정된 클래스)와 관련된 Class 객체를 가져옵니다.
publicstaticClassforName(StringclassName)throwsClassNotFoundException
위 메소드는 className 매개변수로 지정된 클래스와 관련된 Class 객체를 반환합니다. 클래스가 패키지에 있는 경우 className에는 패키지 이름이 포함되어야 합니다(예: className=java.util.Date).
(2) (1) 단계에서 얻은 Class 객체는 public Object newInstance()를 호출하여 InstantiationException, IllegalAccessException 메소드를 호출하여 className 클래스의 객체를 가져옵니다.
참고 : Class 객체를 사용하여 newInstance()를 호출하여 className 클래스의 객체를 인스턴스화하는 경우 className 클래스에는 매개 변수가 없는 생성자가 있어야 합니다.
클래스가 로드되고 객체가 생성되면 해당 클래스와 관련된 Class 유형의 객체가 자동으로 생성되며, getClass() 메서드를 호출하는 모든 객체는 다음과 같이 해당 객체와 관련된 Class 객체를 얻을 수 있습니다. 메서드는 개체를 생성한 클래스 이름, 클래스의 메서드 이름, 멤버 변수 이름 등과 같은 개체에 대한 관련 정보를 얻을 수 있습니다.
Class 객체가 자주 호출하는 메서드는 다음과 같습니다.
클래스의 이름을 반환합니다.
클래스의 모든 생성자를 반환합니다.
클래스의 모든 멤버 변수를 반환합니다.
클래스의 모든 메서드를 반환합니다.