public 조회와 declared 조회는 상속·접근 범위가 다르다

getMethod와 getDeclaredMethod를 이름만 다른 API로 보면 상속 멤버를 놓치거나 private 접근을 오해합니다.

getMethods

상속 포함 public

getDeclaredMethods

현재 class 선언 전부

private invoke

접근 정책·module 경계

핵심: 필요한 탐색 범위를 먼저 정하고 결과를 검증합니다.