Βίντεο: Fribourg Olympic v PAOK - Full Game - Basketball Champions League 2018-19 2024
Μια εντολή try χρησιμοποιείται για να εντοπίσει εξαιρέσεις που μπορεί να ρίξουν όταν εκτελείται το πρόγραμμά σας. Θα πρέπει να χρησιμοποιήσετε μια δοκιμαστική δήλωση κάθε φορά που χρησιμοποιείτε μια δήλωση που μπορεί να κάνει εξαίρεση. Με αυτόν τον τρόπο, το πρόγραμμά σας δεν θα σβήσει αν προκύψει η εξαίρεση.
Η εντολή try έχει αυτή τη γενική φόρμα:
δοκιμάστε { δηλώσεις που μπορούν να εξαιρέσουν } εντολές εξαιρέσεις τύπου {} τελικά { δηλώσεις που εκτελούνται ανεξάρτητα από το αν υπάρχουν ή όχι εξαιρέσεις Οι δηλώσεις που θα μπορούσαν να ρίξουν μια εξαίρεση μέσα σε ένα δοκιμαστικό μπλοκ. Στη συνέχεια, μπορείτε να πιάσετε την εξαίρεση με ένα μπλοκ catch. Το τετραγωνίδιο τελικά χρησιμοποιείται για την παροχή δηλώσεων που εκτελούνται ανεξάρτητα από το αν προκύπτουν εξαιρέσεις.
Εδώ είναι ένα απλό παράδειγμα:
int a = 5; int b = 0; // ξέρετε ότι αυτό δεν θα λειτουργήσει δοκιμάστε {int c = a / b; // αλλά το δοκιμάζετε ούτως ή άλλως} catch (ArithmeticException e) {System. έξω. println ("Δεν μπορώ να το κάνω!")?}Στο προηγούμενο παράδειγμα, ρίχνεται μια εξαίρεση διαίρεσης κατά μηδέν όταν το πρόγραμμα επιχειρεί να διαιρέσει a με b. Αυτή η εξαίρεση υποκλέπτεται από το μπλοκ catch, το οποίο εμφανίζει ένα μήνυμα σφάλματος στην κονσόλα.
Ακολουθούν μερικά πράγματα που πρέπει να σημειώσετε σχετικά με τις δοκιμαστικές δηλώσεις:
Μπορείτε να κωδικοποιήσετε περισσότερα από ένα block block. Με αυτόν τον τρόπο, αν οι δηλώσεις στο μπλοκ δοκιμής ενδέχεται να πετάξουν περισσότερους από έναν τύπους εξαίρεσης, μπορείτε να εντοπίσετε κάθε τύπο εξαίρεσης σε ξεχωριστό μπλοκ αλίευσης.Στην Java 7, μπορείτε να πιάσετε περισσότερες από μία εξαιρέσεις σε ένα μπλοκ catch. Οι εξαιρέσεις χωρίζονται με κάθετες ράβδους, όπως παρακάτω:
-
δοκιμάστε τις {// δηλώσεις που ενδέχεται να πετάξουν // FileNotFoundException // ή IOException} catch (FileNotFoundException | IOException e) {System. έξω. println (e. getMessage ());}
Ένα μπλοκ δοκιμής είναι το δικό του αυτοτελές μπλοκ, ξεχωριστό από το μπλοκ αλίευσης. Ως αποτέλεσμα, οποιεσδήποτε μεταβλητές δηλώνετε στο δοκιμαστικό μπλοκ δεν είναι ορατές στο μπλοκ αλίευσης. Εάν θέλετε να είναι, δηλώστε τα αμέσως πριν από την εντολή try.Οι διάφοροι τύποι εξαίρεσης ορίζονται ως κλάσεις σε διάφορα πακέτα του Java API. Αν χρησιμοποιείτε μια κλάση εξαίρεσης που δεν έχει οριστεί στην τυπική java. lang πακέτο που είναι πάντα διαθέσιμο, θα πρέπει να δώσετε μια δήλωση εισαγωγής για το πακέτο που ορίζει την κλάση εξαίρεσης. Για παράδειγμα:
-
εισαγωγή java. io. *;
-
Εάν θέλετε να αγνοήσετε την εξαίρεση, μπορείτε να πιάσετε την εξαίρεση στο block catch που δεν περιέχει δηλώσεις, όπως παρακάτω:
δοκιμάστε {// Δηλώσεις που θα μπορούσαν να ρίξουν // FileNotFoundException} catch (FileNotFoundException e) {}
-
Αυτή η τεχνική ονομάζεται «κατάποση της εξαίρεσης» και θεωρείται μια επικίνδυνη πρακτική προγραμματισμού επειδή τα σφάλματα του προγράμματος μπορεί να μην εντοπιστούν.