Περισσότερα
Τι κάνει η λέξη-κλειδί assert της Java και πότε πρέπει να χρησιμοποιείται;
Ποια είναι μερικά παραδείγματα πραγματικής ζωής για την κατανόηση του βασικού ρόλου των ισχυρισμών;
580
3
Οι Assertions (μέσω της λέξης-κλειδί assert) προστέθηκαν στη Java 1.4. Χρησιμοποιούνται για την επαλήθευση της ορθότητας ενός αναλλοίωτου στον κώδικα. Δεν θα πρέπει ποτέ να ενεργοποιούνται σε κώδικα παραγωγής και είναι ενδεικτικά σφάλματος ή κακής χρήσης ενός μονοπατιού κώδικα. Μπορούν να ενεργοποιηθούν κατά τον χρόνο εκτέλεσης μέσω της επιλογής
-ea
στην εντολήjava
, αλλά δεν είναι ενεργοποιημένες από προεπιλογή.Ένα παράδειγμα:
Οι ισχυρισμοί χρησιμοποιούνται για τον έλεγχο των μετα-συνθηκών και των "δεν πρέπει ποτέ να αποτύχει" προ-συνθηκών. Ο σωστός κώδικας δεν θα πρέπει ποτέ να αποτυγχάνει σε έναν ισχυρισμό- όταν ενεργοποιούνται, θα πρέπει να υποδεικνύουν ένα σφάλμα (ελπίζουμε σε ένα σημείο που βρίσκεται κοντά στο σημείο όπου βρίσκεται ο πραγματικός τόπος του προβλήματος).
Ένα παράδειγμα ενός ισχυρισμού θα μπορούσε να είναι ο έλεγχος ότι μια συγκεκριμένη ομάδα μεθόδων καλείται με τη σωστή σειρά (π.χ. ότι η
hasNext()
καλείται πριν από τηνnext()
σε ένανIterator
).Ένα πραγματικό παράδειγμα, από μια κλάση Stack (από το Assertion in Java Articles)