Οι προγραμματιστές χρησιμοποιούν το ' java.lang.Class.getMethod() ” μέθοδος για την ανάκτηση ενός αντικειμένου που αντιπροσωπεύει μια συγκεκριμένη δημόσια μέθοδο που δηλώνεται από τις υπερκλάσεις. Αυτή η μέθοδος επιτρέπει τη δυναμική εξέταση και χειρισμό κλάσεων, διεπαφών, μεθόδων και άλλων οντοτήτων κατά το χρόνο εκτέλεσης. Αυτό σημαίνει ότι ο προγραμματιστής δεν χρειάζεται να γνωρίζει για τη γνώση του χρόνου μεταγλώττισης της δομής της τάξης.
Αυτός ο οδηγός προσφέρει μια λεπτομερή εξήγηση της χρήσης της μεθόδου java.lang.class.getMethod() στην Java.
Πώς να χρησιμοποιήσετε τη μέθοδο Java.lang.Class.getMethod();
Η μέθοδος getMethod() είναι μέρος του API ανάκλασης της Java, το οποίο προσφέρει στους προγραμματιστές να επιθεωρούν και να καλούν μεθόδους δυναμικά. Επιτρέπει στους προγραμματιστές να καλούν μεθόδους με διαφορετικά ονόματα ή υπογραφές ανάλογα με τις συνθήκες χρόνου εκτέλεσης.
Σύνταξη
Η σύνταξη για το ' getMethod() Η μέθοδος ' στη γλώσσα Java φαίνεται παρακάτω:
δημόσια Μέθοδος getMethod ( Συμβολοσειρά SelectedmethodName, Class [ ] Παράμετρος Τύπος )
ρίχνει NoSuchMethodException, SecurityException
Περιγραφή της παραπάνω σύνταξης:
- Δέχεται δύο παραμέτρους που προσδιορίζουν το όνομα της επιλεγμένης μεθόδου και τον αντίστοιχο πίνακα τύπων παραμέτρου.
- Επιστρέφει την ζητούμενη μέθοδο της κλάσης.
- Αυτή η μέθοδος ρίχνει ' NoSuchMethodException ' και ' Εξαίρεση ασφαλείας Εξαιρέσεις ανάλογα με την κατάσταση
Τώρα, ας επισκεφτούμε το παρακάτω παράδειγμα, για να κατανοήσουμε καλύτερα τη μέθοδο Java.lang.Class.getMethod().
Παράδειγμα: Χρήση της μεθόδου getMethod().
Για να χρησιμοποιήσετε ένα « getMethod() ' μέθοδος για την ανάκτηση δεδομένων σχετικά με μια συγκεκριμένη μέθοδο, δείτε το παρακάτω μπλοκ κώδικα:
εισαγωγή java.util. * ;Public class UseCase {
δημόσιο κενό μοναδικό ( ) { }
δημόσιο στατικό κενό κύριο ( Σειρά [ ] args ) // δημιουργία κύριας ( ) μέθοδος
ρίχνει ClassNotFoundException, NoSuchMethodException
{
Κατηγορία newcl = Class.forName ( 'UseCase' ) ;
System.out.println ( 'Τάξη που προσδιορίζεται από newcl: ' + newcl.toString ( ) + ''' ) ;
Συμβολοσειρά mname = 'μοναδικός' ;
Τάξη [ ] pType = null;
// χρησιμοποιώντας τη μέθοδο getMethod ( ) μέθοδος
System.out.println ( ''' είμαι χαρούμενος '' Μέθοδος newcl: '' + newcl.getMethod ( mname, pType ) + ''' ) ;
}
}
Περιγραφή του παραπάνω μπλοκ κωδικών:
- Πρώτα, δημιουργήστε μια τάξη με το όνομα ' UseCase ' και δηλώστε μια δημόσια μέθοδο με το όνομα ' μοναδικός() '.
- Στη συνέχεια, δηλώστε δύο εξαιρέσεις που μπορούν να τεθούν από το πρόγραμμα μέσα στο ' κύριος() 'μέθοδος.
- Τώρα, χρησιμοποιήστε το ' forName() 'μέθοδος ανάκτησης της κλάσης' UseCase '. Μετά από αυτό, επιστρέψτε το αντικείμενο κλάσης που είναι συνδεδεμένο με το παρεχόμενο όνομα κλάσης και εμφανίστε την κλάση που ανακτήθηκε στην κονσόλα.
- Στη συνέχεια, αποθηκεύστε το απαιτούμενο όνομα μεθόδου ως τιμή στο ' ευτυχισμένος ” μεταβλητή. Επίσης, ορίστε την τιμή του ' μηδενικό ' στο ' pType μεταβλητή ” που υποδεικνύει ότι η μέθοδος που πρόκειται να ανακτηθεί δεν έχει καμία παράμετρο.
- Μετά από αυτό, καλέστε το ' getMethod() μέθοδος που χρησιμοποιεί το « πυρηνικός ” αντικειμένου και περάστε τις μεταβλητές “mname” και “pType” ως παράμετρο. Στο τέλος, επισημαίνει τις πληροφορίες σχετικά με την επιθυμητή μέθοδο στην κονσόλα.
Μετά το τέλος της φάσης εκτέλεσης:
Το στιγμιότυπο δείχνει ότι η μέθοδος getMethod() χρησιμοποιείται για την ανάκτηση των πληροφοριών της επιλεγμένης μεθόδου.
συμπέρασμα
Τρεις εξαιρέσεις» NoSuchMethodException », « NullPointerException ' και ' Εξαίρεση ασφαλείας ' μπορεί να πεταχτεί χρησιμοποιώντας το ' java.lang.Class.getMethod() 'μέθοδος. Αυτή η μέθοδος είναι πολύτιμη για δυναμική επίκληση μεθόδων και προγραμματισμό με βάση τον προβληματισμό. Και σε σενάρια όπου ο προγραμματιστής χρειάζεται να ανακαλύψει και να αλληλεπιδράσει με μεθόδους κατά το χρόνο εκτέλεσης. Αυτό είναι όλο, σχετικά με τη χρήση της μεθόδου java.lang.Class.getMethod() στην Java.