효과적인 측면에서 Class 클래스의 getMethod 메소드의 경우 이 두 매개변수 사이에는 차이가 없습니다. getMethod의 소스 코드를 볼 수 있습니다. getMethod을 레이어별로 호출한 후 다음 방법을 사용합니다.
이 메소드에는 메소드의 매개변수를 일치시키는 데 사용되는 arrayContentsEq 메소드가 있음을 확인할 수 있습니다.
parameterTypes가 null인 경우와 parameterTypes가 빈 배열(길이 == 0)인 경우의 효과는 다음과 같습니다. same - 이것을 가정합니다. 우리가 얻으려는 메소드 m의 매개변수가 비어 있으면 메소드의 m.getParameterTypes()에서 반환되는 배열(a2)의 길이는 0입니다. a1 == null 또는 a1.length == 0일 때 이를 찾을 수 있습니다. arrayContentsEq 메서드는 All are true을 반환합니다(즉, 일치가 성공함).
getMethod(String name, Class<?>... parameterTypes)의 소스 코드를 추적하면 다음 코드를 찾을 수 있습니다. 여기서 a1은 들어오는 parameterTypes이고 a2는 name 매개변수에 따라 발견된 Method 인스턴스가 호출하는 method.getParameterTypes()입니다. 🎜>. 프로그램은 a1과 a2의 비교를 바탕으로 올바른 Method을 반환합니다.
효과적인 측면에서
Class
클래스의getMethod
메소드의 경우 이 두 매개변수 사이에는 차이가 없습니다.getMethod
의 소스 코드를 볼 수 있습니다.getMethod
을 레이어별로 호출한 후 다음 방법을 사용합니다.이 메소드에는 메소드의 매개변수를 일치시키는 데 사용되는
arrayContentsEq
메소드가 있음을 확인할 수 있습니다.parameterTypes가
null
인 경우와 parameterTypes가 빈 배열(길이 == 0)인 경우의 효과는 다음과 같습니다. same - 이것을 가정합니다. 우리가 얻으려는 메소드 m의 매개변수가 비어 있으면 메소드의m.getParameterTypes()
에서 반환되는 배열(a2)의 길이는 0입니다.a1 == null
또는a1.length == 0
일 때 이를 찾을 수 있습니다.arrayContentsEq
메서드는 All aretrue
을 반환합니다(즉, 일치가 성공함).메서드에 매개변수가 없으면 실제로 두 상황 사이에 차이가 없습니다.
으아아아getMethod(String name, Class<?>... parameterTypes)
의 소스 코드를 추적하면 다음 코드를 찾을 수 있습니다. 여기서 a1은 들어오는parameterTypes
이고a2
는name
매개변수에 따라 발견된Method
인스턴스가 호출하는method.getParameterTypes()
입니다. 🎜>. 프로그램은a1
과a2
의 비교를 바탕으로 올바른Method
을 반환합니다.