Προγραμματισμός

* Γνώση Υπολογιστών >> Προγραμματισμός >> Προγραμματισμός Java

Πώς να χρησιμοποιήσετε το Java Callbacks

Οπισθοκλήσεων σε Java είναι χρήσιμη όταν χρειάζεστε μια μέθοδο για να δεχτεί μια αναφορά σε άλλη μέθοδο ως επιχείρημα . Για παράδειγμα, μία μέθοδος γραφική παράσταση θα μπορούσε να λάβει μια «αμαρτία » ή λειτουργία " συνημίτονο " ως παράμετρο . Στην Java δεν μπορείτε να στείλετε δείκτες συναρτήσεων , όπως μπορείτε σε C , έτσι ώστε να πρέπει να προσομοιώνουν επανακλήσεις μέσω της χρήσης των διασυνδέσεων . Μπορείτε να περάσετε μια διεπαφή ως επιχείρημα και , στη συνέχεια, η αντίστοιχη εφαρμογή παρέχει την έκδοση του κώδικα για να εκτελέσει . Οδηγίες
Η

1 Ανοίξτε το αρχείο Java σας σε ένα πρόγραμμα επεξεργασίας , όπως Eclipse , Netbeans ή JBuilder Χ. 2

Δημιουργήστε μια διεπαφή και δύο κλάσεις που υλοποιούν τη διεπαφή με την προσθήκη του ακόλουθο κώδικα πάνω από την κύρια λειτουργία σας :

interface Φρούτα {

άκυρη callback_method ( ) ? }


τάξη της Apple υλοποιεί Φρούτα {

public void callback_method ( ) {

System.out.println ( " επανάκλησης - Μήλο " ) ? }


}

τάξη υλοποιεί Μπανάνα Fruit {

public void callback_method ( ) {

System.out.println ( " επανάκλησης - Μπανάνα ")? }


}

Κάθε κλάση που υλοποιεί τη διεπαφή πρέπει να έχει μια παραλλαγή της μεθόδου που ορίζεται στο περιβάλλον .
εικόνων 3

Δημιουργήστε μια κλάση " καλών " που έχει μια μέθοδο για την κίνηση της επανάκλησης με την προσθήκη του Κωδικός :

τάξη καλούντος {

δημόσιο μητρώο ( φρούτα φρούτα ) {

fruit.callback_method ( ) ? }


}

στο παράδειγμα , η μέθοδος «μητρώο» μπορεί να πάρει είτε ένα « μήλο » ή « Μπανάνα » ως συμβολή του και στη συνέχεια να εκτελέσει το ταίριασμα " callback_method " για αυτήν την έκδοση .
Η 4

Δημιουργία " Caller " , " Μήλο " και " Μπανάνα " αντικείμενα και στη συνέχεια να περάσει και τις δύο εκδόσεις του " Φρούτα " με τη μέθοδο του " καλούντος " αντικειμένου " μητρώο" , με την προσθήκη του παρακάτω κώδικα ως κύρια λειτουργία σας :

δημόσια στατική άκυρη κύρια ( String [ ] args ) {

καλούντος καλούντος = νέα καλούντος ( ) ?

μήλο Φρούτα = νέα apple ( ) ? έκδοση //Η Apple φρούτων

μπανάνα Φρούτα = νέα μπανάνα ( ) ? //Banana έκδοση των φρούτων

caller.register ( μήλο) ? //εμφανίζει " επανάκλησης - μήλο"

caller.register (μπανάνα ) ? //εμφανίζει " επανάκλησης - Μπανάνα "

}

Αυτό σας επιτρέπει να αποφύγετε να δημιουργήσετε πολλαπλές εκδόσεις της κατηγορίας " Caller " για κάθε εφαρμογή . Οποιαδήποτε εφαρμογή του " Φρούτα " μπορεί να περάσει στο « καλούντος », το οποίο φορτώνει την αντίστοιχη μέθοδο επανάκλησης για την εν λόγω έκδοση .
5

Αποθηκεύστε το αρχείο Java , την κατάρτιση και την εκτέλεση του προγράμματος για να δείτε τις επιστροφές κλήσεων .
Η
εικόνων

Συναφής σύστασή

Πνευματικά δικαιώματα © Γνώση Υπολογιστών Όλα τα δικαιώματα κατοχυρωμένα