Heim > Java > javaLernprogramm > Hauptteil

Können Sie private Methoden mithilfe von Reflection in Java aufrufen?

Linda Hamilton
Freigeben: 2024-11-09 05:48:02
Original
809 Leute haben es durchsucht

Can You Invoke Private Methods Using Reflection in Java?

Private Methoden durch Reflektion aufrufen

Können Sie in Java eine private Methode durch Reflektion aufrufen?

Lösung :

Ja, es ist möglich, private Methoden mithilfe von Reflektion aufzurufen. Ändern Sie dazu den Code wie folgt:

Method method = object.getClass().getDeclaredMethod(methodName);
method.setAccessible(true);
Object r = method.invoke(object);
Nach dem Login kopieren

Zusätzliche Überlegungen:

  • getDeclaredMethod ruft nur in der aktuellen Klasse deklarierte Methoden ab, nicht geerbte Methoden .
  • Ein Sicherheitsmanager könnte die Verwendung von setAccessible einschränken und erfordern, dass es als privilegierter Benutzer ausgeführt wird Aktion.

Indem Sie diese Schritte befolgen, können Sie über Reflektion auf private Methoden zugreifen und diese aufrufen.

Das obige ist der detaillierte Inhalt vonKönnen Sie private Methoden mithilfe von Reflection in Java aufrufen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage