


Mendapatkan Nama Parameter Kaedah Java melalui Refleksi
Dalam Java, nama parameter kaedah tidak boleh diakses secara lalai, membawa kepada persoalan sama ada ia mungkin untuk mendapatkannya semula menggunakan refleksi .
Penyelesaian Java 8 dengan Pantulan Parameter
Sebelum Java 8, ia tidak boleh digunakan untuk mengakses nama parameter melalui refleksi. Walau bagaimanapun, dengan pengenalan pantulan parameter dalam Java 8, ia menjadi mungkin. Kod berikut menunjukkan cara untuk mendapatkan nama parameter:
import java.lang.reflect.Method; import java.lang.reflect.Parameter; public class ParameterReflection { public static void main(String[] args) { Class> clazz = Whatever.class; Method[] methods = clazz.getDeclaredMethods(); for (Method method : methods) { if (method.getName().equals("aMethod")) { Parameter[] parameters = method.getParameters(); for (Parameter parameter : parameters) { System.out.println(parameter.getName()); } break; } } } }
Dalam contoh ini, kelas Whatever mengandungi kaedah aMethod dengan parameter integer bernama aParam. Dengan menggunakan kaedah method.getParameters(), anda boleh mendapatkan tatasusunan objek Parameter yang mewakili setiap parameter kaedah, bersama-sama dengan nama mereka.
Bendera Pengkompil (-parameters)
Ia penting untuk ambil perhatian bahawa Java 8 memerlukan mendayakan bendera pengkompil -parameters untuk menjadikan nama parameter boleh diakses semasa runtime. Dalam projek Maven, bendera ini boleh ditambahkan pada
<compilerargument>-parameters</compilerargument>
Sebagai alternatif, dalam Java 8 versi pengkompil yang lebih baharu daripada 3.6.2, anda boleh menetapkan parameter kepada benar dalam
<parameters>true</parameters>
Kesimpulan
Dengan pengenalan pantulan parameter dalam Java 8, mendapatkan nama parameter kaedah melalui pantulan kini boleh dilaksanakan. Dengan menggunakan kelas Parameter dan bendera pengkompil -parameters, anda boleh mengakses nama parameter pada masa jalan.
Atas ialah kandungan terperinci Bagaimanakah anda boleh mendapatkan semula nama parameter kaedah Java menggunakan refleksi dalam Java 8?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Alat AI Hot

Undresser.AI Undress
Apl berkuasa AI untuk mencipta foto bogel yang realistik

AI Clothes Remover
Alat AI dalam talian untuk mengeluarkan pakaian daripada foto.

Undress AI Tool
Gambar buka pakaian secara percuma

Clothoff.io
Penyingkiran pakaian AI

AI Hentai Generator
Menjana ai hentai secara percuma.

Artikel Panas

Alat panas

PhpStorm versi Mac
Alat pembangunan bersepadu PHP profesional terkini (2018.2.1).

Penyesuai Pelayan SAP NetWeaver untuk Eclipse
Integrasikan Eclipse dengan pelayan aplikasi SAP NetWeaver.

SublimeText3 versi Inggeris
Disyorkan: Versi Win, menyokong gesaan kod!

Muat turun versi mac editor Atom
Editor sumber terbuka yang paling popular

Dreamweaver Mac版
Alat pembangunan web visual