Rumah >Java >javaTutorial >Bagaimana untuk Mendapatkan Nama dan Jenis Parameter Kaedah Menggunakan Refleksi Java?
Masalah:
Diberikan kelas Java dengan kaedah yang menerima parameter, bagaimana anda boleh menentukan nama dan jenis parameter menggunakan pantulan Java?
Penyelesaian:
Dalam Java 8 dan kemudian, kelas Parameter menyediakan akses kepada nama parameter. Untuk mendapatkan maklumat parameter:
import java.lang.reflect.Method; import java.lang.reflect.Parameter; public class ParameterNames { public static void getParameterNames(Method method) { Parameter[] parameters = method.getParameters(); for (Parameter parameter : parameters) { System.out.printf("Parameter name: %s, Type: %s%n", parameter.getName(), parameter.getType().getName()); } } public static void main(String[] args) { try { Method method = Whatever.class.getMethod("aMethod", int.class); getParameterNames(method); } catch (NoSuchMethodException e) { e.printStackTrace(); } } public static class Whatever { public void aMethod(int aParam) { } } }
Output:
Parameter name: aParam, Type: int
Nota Penting:
Untuk ini berfungsi, anda perlu menentukan -parameters hujah semasa menyusun kod Java anda. Contohnya, untuk pengguna Maven:
<configuration> <parameters>true</parameters> <compilerArgument>-parameters</compilerArgument> </configuration>
Atas ialah kandungan terperinci Bagaimana untuk Mendapatkan Nama dan Jenis Parameter Kaedah Menggunakan Refleksi Java?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!