컴퓨터 지식 네트워크 - 컴퓨터 구성 - Java 리플렉션, 개인 메소드 호출

Java 리플렉션, 개인 메소드 호출

그래서?쉬움

String?path="com.test.B"

Class?clazz?=?Class.forName(path);// b의 반영을 얻습니다.

B?b?=(B)clazz.newInstance();//전제는 클래스 b에 매개변수 없는 생성자가 있다는 것입니다.

Method?m?= ? clazz.getDeclaredMehod("SetName",String.class);

m.setAccessible(true);//보안 검사를 수행하지 않고 비공개 메서드에 액세스할 수 있습니다.

m. b, "하하");

B용입니다(값을 호출하고 할당하는 데 다음 메서드가 사용됩니다)

private?void?SetName(String?s){}

ps?getDeclaredMehod?는 비공개 메소드에 대한 호출입니까? 액세스하려면 setAccessible을 추가해야 합니다.

getMehod?는 일반 메소드에 대한 호출이므로 setAccessible을 추가할 필요가 없습니다. >

上篇: 오포 상호이체 운영방법 下篇: q—얼굴은 히알루론산이고 남은 C원액은 어떻게 사용하나요?
관련 내용