java:exceptions_intro

Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revision Previous revision
Next revision
Previous revision
Last revision Both sides next revision
java:exceptions_intro [2016/02/15 10:47]
gthanos [Εξαιρέσεις (Exceptions)]
java:exceptions_intro [2019/04/20 03:32]
gthanos [Αντικείμενο της εξαίρεσης (exception object)]
Line 8: Line 8:
 ====== Αντικείμενο της εξαίρεσης (exception object) ====== ====== Αντικείμενο της εξαίρεσης (exception object) ======
  
-Κάθε εξαίρεση ​που μπορεί ​να προκληθεί παράγει ένα αντικείμενο το οποίο περιέχει ​όλες ​τις πληροφορίες που έχουν να κάνουν ​με το λάθος το οποίο έχει προκύψει,​ όπως ο τύπος του λάθους και την κατάσταση που βρισκόταν το πρόγραμμα όταν έγινε το λάθος αυτό.+Κάθε εξαίρεση ​όταν προκαλείται ​παράγει ένα αντικείμενο το οποίο περιέχει τις πληροφορίες που ​συνδέονται με το γεγονός το οποίο έχει προκύψει,​ όπως ο τύπος του λάθους και την κατάσταση που βρισκόταν το πρόγραμμα όταν έγινε το λάθος αυτό.
  
-Σε αυτό το σημείο ας δούμε ένα πολύ απλό και συχνό λάθος που μπορεί να προκύψει ​αν δεν λάβει σχετική μέριμνα ο προγραμματιστής.+Σε αυτό το σημείο ας δούμε ένα πολύ απλό και συχνό λάθος που μπορεί να προκύψει ​στην περίπτωση που ​δεν λάβει σχετική μέριμνα ο προγραμματιστής.
  
 <code java TestDivideByZero.java>​ <code java TestDivideByZero.java>​
Line 38: Line 38:
 Τι θα συμβεί στο παραπάνω πρόγραμμα αν ο 2ος αριθμός που θα δώσει ο χρήστης είναι 0; Επίσης αν ο χρήστης δεν δώσει αριθμό σαν είσοδο αλλά γράμμα;​ Τι θα συμβεί στο παραπάνω πρόγραμμα αν ο 2ος αριθμός που θα δώσει ο χρήστης είναι 0; Επίσης αν ο χρήστης δεν δώσει αριθμό σαν είσοδο αλλά γράμμα;​
  
-Όπως καταλαβαίνουμε,​ θα πρέπει να προβλέψουμε όλες τις περιπτώσεις (ή τουλάχιστον τις πιο βασικές) στις οποίες ο χρήστης είτε από λάθος είτε επειδή είναι κακόβουλος θα δώσει σαν είσοδο κάτι το οποίο δεν είναι σωστό και θα προκαλέσει πρόβλημα. Το παραπάνω παράδειγμα είναι ένα από τα προβλήματα που μπορούν να δημιουργηθούν σε ένα πρόγραμμα ​και θα πρέπει να το καλύψουμε ​με σκοπό **να μην σταματήσει η εκτέλεση του προγράμματος**.+Όπως καταλαβαίνουμε,​ θα πρέπει να προβλέψουμε όλες τις περιπτώσεις (ή τουλάχιστον τις πιο βασικές) στις οποίες ο χρήστης είτε από λάθος είτε επειδή είναι κακόβουλος θα δώσει σαν είσοδο κάτι το οποίο δεν είναι σωστό και θα προκαλέσει πρόβλημα. Το παραπάνω παράδειγμα είναι ένα από τα προβλήματα που μπορούν να δημιουργηθούν σε ένα πρόγραμμα. Ο προγραμματιστής καλείται να το αντιμετωπίσει προκειμένου **να μην σταματήσει η εκτέλεση του προγράμματος**.
  
-Στο παραπάνω παράδειγμα συνεπώς,​ το σύστημα θα παράξει ένα αντικείμενο που θα περιγράφει το είδος του λάθους που συνέβη. ​Πρέπει εμείς ​με κάποιον τρόπο+Στο παραπάνω παράδειγμα συνεπώς,​ το σύστημα θα παράξει ένα αντικείμενο που θα περιγράφει το είδος του λάθους που συνέβη. ​Ο προγραμματιστής πρέπει
-  - να λάβουμε αυτό ​το αντικείμενο +  - να λάβει το αντικείμενο 
-  - να δούμε το λάθος που έχει προκύψει +  - να εξετάσει ​το λάθος που έχει προκύψει 
-  - να αντιμετωπίσουμε το λάθος ​έτσι ​ώστε το πρόγραμμά ​μας ​να επιστρέψει σε μια "σωστή" κατάσταση.+  - να αντιμετωπίσει το λάθοςώστε το πρόγραμμά να επιστρέψει σε ένα σημείο από όπου μπορεί να συνεχίσει τη λειτουργία του χωρίς πρόβλημα.
  
-|Προηγούμενο:​ [[:java:interfacesΔιεπαφές (Interfaces) ​]] | Επόμενο:​ [[:​java:​exceptions_try_catch_block | Διαχείριση Εξαιρέσεων]]|+|Προηγούμενο:​ [[:java:instanceofΤελεστής instanceof ]] | [[ :toc | Περιεχόμενα ]] | Επόμενο:​ [[:​java:​exceptions_try_catch_block | Διαχείριση Εξαιρέσεων]]|
  
java/exceptions_intro.txt · Last modified: 2019/04/20 05:02 by gthanos