java:exceptions_try_catch_block

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
java:exceptions_try_catch_block [2016/02/15 11:03]
gthanos [Finaly Block]
java:exceptions_try_catch_block [2019/04/20 03:55] (current)
gthanos [Άλλο παράδειγμα - Ανοίγοντας ένα αρχείο για διάβασμα]
Line 29: Line 29:
 Εντός του **try** block βάζουμε τον κώδικα που μπορεί να δημιουργηθεί μια εξαίρεση. Κάθε **catch** block ορίζει ένα διαφορετικό τύπο εξαίρεσης μέσα σε παρένθεση (''​ExceptionTypeOne'',​ ''​ExceptionTypeTwo'',​ κλπ). Εάν η εξαίρεση που παράγεται συμπίπτει __ως προς τον τύπο__ της με ένα αντικείμενο που ορίζεται εντός της παρενθέσεως ενός **catch** block, τότε αυτό το block θα εκτελεστεί. Θα εκτελεστεί επομένως ο κώδικας αντιστοιχεί στον τύπο δεδομένων ο οποίος παράχθηκε από την εκάστοτε εξαίρεση. ​ Εντός του **try** block βάζουμε τον κώδικα που μπορεί να δημιουργηθεί μια εξαίρεση. Κάθε **catch** block ορίζει ένα διαφορετικό τύπο εξαίρεσης μέσα σε παρένθεση (''​ExceptionTypeOne'',​ ''​ExceptionTypeTwo'',​ κλπ). Εάν η εξαίρεση που παράγεται συμπίπτει __ως προς τον τύπο__ της με ένα αντικείμενο που ορίζεται εντός της παρενθέσεως ενός **catch** block, τότε αυτό το block θα εκτελεστεί. Θα εκτελεστεί επομένως ο κώδικας αντιστοιχεί στον τύπο δεδομένων ο οποίος παράχθηκε από την εκάστοτε εξαίρεση. ​
  
-Ας δούμε ​ένα μικρό τμήμα κώδικα που εντοπίζει ​ένα ​είδος εξαίρεσης το οποίο συναντήσαμε ​και ​παραπάνω:​+Στο προηγούμενο παράδειγμα, ας προσθέσουμε ένα ​τμήμα κώδικα που εντοπίζει ​το είδος εξαίρεσης το οποίο συναντήσαμε παραπάνω:​
  
 <code java TestDivideByZero.java>​ <code java TestDivideByZero.java>​
Line 61: Line 61:
 </​code>​ </​code>​
  
-Όπως βλέπουμε έχουμε το προηγούμενο παράδειγμα,​ εμπλουτισμένο όμως με κώδικα διαχείρισης της διαίρεσης με το μηδέν. Ο κώδικας θα αναγνωρίσει ότι υπάρχει δημιουργείται ''​ArithmeticException''​ και συγκεκριμένα διαίρεση με το μηδέν (0) και θα εκτυπώσει τα σχετικά μηνύματα.+Όπως βλέπουμε έχουμε το προηγούμενο παράδειγμα,​ εμπλουτισμένο όμως με κώδικα διαχείρισης της ​εξαίρεση που παράγεται από τη διαίρεση ​ενός ακεραίου ​με το μηδέν. Ο κώδικας θα αναγνωρίσει ότι υπάρχει δημιουργείται ''​ArithmeticException''​ και συγκεκριμένα διαίρεση με το μηδέν (0) και θα εκτυπώσει τα σχετικά μηνύματα.
  
-=== Ανοίγοντας ένα αρχείο για διάβασμα ===+===== Άλλο παράδειγμα - Ανοίγοντας ένα αρχείο για διάβασμα ​=====
  
-Παρακάτω δίνεται ένα πιο σύνθετο παράδειγμα μία μεθόδου που ​διαβάζει ένα αρχείο κειμένου και ​το επιστρέφει ​στη μορφή ενός String.+Παρακάτω δίνεται ένα πιο σύνθετο παράδειγμα μία μεθόδου που ανοίγει ένα αρχείο κειμένου ​για διάβασμα ​και επιστρέφει το περιεχόμενο του σε μορφή ​συμβολοσειράς (//String//).
  
 <code java WholeFileReader.java>​ <code java WholeFileReader.java>​
Line 82: Line 82:
       StringBuffer strDocument = new StringBuffer();​       StringBuffer strDocument = new StringBuffer();​
       while ((inputLine = in.readLine()) != null) {       while ((inputLine = in.readLine()) != null) {
-        strDocument.append(inputLine);​+        strDocument.append(inputLine+"​\n"​);
         //throw new IOException();​         //throw new IOException();​
       }       }
Line 142: Line 142:
       }       }
 </​code>​ </​code>​
-για ​να δημιουργήσετε ένα ''​IOException''​ και παρατηρήστε από τα μηνύματα που εκτυπώνονται κατά την εκτέλεση του προγράμματος την πορεία του προγράμματος.+με στόχο ​να δημιουργήσετε ένα ''​IOException''​ και παρατηρήστε από τα μηνύματα που εκτυπώνονται κατά την εκτέλεση του προγράμματος την πορεία του προγράμματος.
  
 ===== Finaly Block ===== ===== Finaly Block =====
Line 169: Line 169:
       while ((inputLine = in.readLine()) != null) {       while ((inputLine = in.readLine()) != null) {
         strDocument.append(inputLine);​         strDocument.append(inputLine);​
-        //throw new IOException();​ 
       }       }
       return strDocument.toString();​       return strDocument.toString();​
Line 221: Line 220:
 </​code>​ </​code>​
  
-|Προηγούμενο:​ [[:​java:​exceptions_intro| Εξαιρέσεις ]] | Επόμενο:​ [[:​java:​exceptions_thrown_by_methods | Χειρισμός της εξαίρεσης σε υψηλότερο επίπεδο ]]|+|Προηγούμενο:​ [[:​java:​exceptions_intro| Εξαιρέσεις ​]] | [[ :toc | Περιεχόμενα ​]] | Επόμενο:​ [[:​java:​exceptions_thrown_by_methods | Χειρισμός της εξαίρεσης σε υψηλότερο επίπεδο ]]|
  
  
java/exceptions_try_catch_block.1455534233.txt.gz · Last modified: 2016/02/26 11:15 (external edit)