Μία από τις απορίες που είχα πριν από λίγες μέρες ήταν τι γίνεται αν έχουμε μία μέθοδο που επιστρέφει τιμή, ο κώδικάς της βρίσκεται σε ένα μπλοκ try - catch - finally, και η εντολή return είναι είτε μέσα στην try είτε μέσα στην catch.
Δηλαδή ο κώδικα είναι κάπως έτσι:
try
{
...
// Κώδικας της try
...
return true;
}
catch (Exception ex)
{
...
// Κώδικας της catch
...
return false;
}
finally
{
...
// Κώδικας της finally
...
}
Όταν η εκτέλεση φτάσει στην εντολή return, εκτελείται η return και δεν εκτελείται η finally (επομένως ο κώδικας μας είναι προβληματικός) ή εκτελείται πρώτα η finally και μετά η return?
Όπως ήταν φυσικό η Java είναι έξυπνη γλώσσα και έτσι όταν φτάσει η ροή του κώδικα στην εντολή return εκτελείται πρώτα η finally και μετά η return. Για να μην έχει κανείς απορροία δηλαδή!
2 comments:
Interesting..
Den blepw pou8ena plirofories gia sena omws.. Apo pou eisai..? Me ti asxoleisai..? Projects..? klp klp..
Τι απέγινες εσύ φίλε??? Φαινόταν πολλά υποσχόμενο το ιστολόγιο σου. Μήπως Παντρεύτηκες??
Post a Comment