개발자 Q&A

개발하다 막혔다면? 여기서 질문하세요! 초보부터 고수까지, 함께 고민하고 해결하는 공간입니다. 누구나 자유롭게 질문하고 답변을 남겨보세요!

2025.04.08 04:15

ReflectionParameter::getDeclaringClass에 대한 질문

목록
  • ReactNative장인 5일 전 2025.04.08 04:15
  • 2
    1
저는 ReflectionParameter::getDeclaringClass를 사용할 때 이해가 잘 안 가는 부분이 있습니다. ReflectionParameter::getDeclaringClass는 어떤 클래스에서 파라미터를 선언했는지 알려주는 메소드인데요, 이 메소드가 실제로 어떤 클래스의 인스턴스를 반환하는지 궁금합니다.

예를 들어, 다음과 같은 코드가 있다고 가정해 보겠습니다.

java

public class Main {

    public static void main(String[] args) {

        Method method = Main.class.getMethod("main", String[].class);

        Parameter[] parameters = method.getParameters();

        for (Parameter parameter : parameters) {

            System.out.println(parameter.getName());

            System.out.println(parameter.getDeclaringClass());

        }

    }

}



위 코드에서 Parameter parameter.getDeclaringClass()의 반환값은 무엇일까요? Main.class인지 아니면 String[].class인지 궁금합니다.

제가 잘못 이해한 부분이 있으면 알려주시면 감사하겠습니다.

    댓글목록

    profile_image
    나우호스팅  5일 전



    ReflectionParameter::getDeclaringClass는 파라미터가 선언된 클래스를 반환합니다.

    위 코드에서 Parameter parameter.getDeclaringClass()의 반환값은 String[].class입니다.

    이유는 String[].class가 파라미터의 타입이기 때문입니다.

    getDeclaringClass는 파라미터가 선언된 클래스를 반환하는 것이지, 메서드가 선언된 클래스를 반환하는 것이 아닙니다.

    따라서 Main.class가 아니라 String[].class가 반환됩니다.

    2025-04-08 04:34

  • 개발자 Q&A 포인트 정책
      글쓰기
      50P
      댓글
      10P
  • 전체 11,047건 / 74 페이지

검색

게시물 검색