ΣΕΜΙΝΑΡΙΟ JAVA. 5 η ιάλεξη

Σχετικά έγγραφα
ΣΕΜΙΝΑΡΙΟ JAVA. 2 η ιάλεξη

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 9 : ΕΞΑΙΡΕΣΕΙΣ ΚΑΙ Ο ΧΕΙΡΙΣΜΟΣ ΤΟΥΣ

. Μεθοδολογία Προγραμματισμού. Abstract Κλάσεις και Interfaces. Νικόλαος Πεταλίδης. Εισαγωγή Εαρινό Εξάμηνο 2014

Εξαιρέσεις. try, catch, finally, throw, throws

Χειρισµός Σφαλµάτων. Γρηγόρης Τσουµάκας. Τµήµα Πληροφορικής, Αριστοτέλειο Πανεπιστήµιο Θεσσαλονίκης. Έκδοση:

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΤΗΣ ΙΟΙΚΗΣΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΙΟΙΚΗΣΗΣ ΣΤΟΧΑΣΤΙΚΑ ΜΟΝΤΕΛΑ

Αντικειμενοστρεφής Προγραμματισμός

Αντικειμενοστραφής Προγραμματισμός

Πρόγραµµα 9.1 Πέρασµα δεδοµένων στην µνήµη

ΣΕΜΙΝΑΡΙΟ JAVA. 2 η ιάλεξη

Εξαιρέσεις (Exceptions) Λάθη (Errors) Χειρισμός των Εξαιρέσεων (Exception Handling) Assertions

Χειρισμός Εξαιρέσεων EXCEPTIONS IN JAVA

6. Εξαιρέσεις στη γλώσσα Java

ΕΞΑΙΡΕΣΕΙΣ. Εξαιρέσεις προκαλούνται. από το σύστηµα. από το πρόγραµµα

Ειδικά Θέματα Προγραμματισμού

Προγραμματισμός ΙΙ (Java) 4. Διαχείριση εξαιρέσεων

Εξαιρέσεις (στη Java)

Εξαιρέσεις στη Java. Περιεχόμενα. Κάποιες προκαθορισμένες ρ εξαιρέσεις. Κωστής Σαγώνας

Αντικειµενοστραφής Προγραµµατισµός

Εξαιρέσεις στην Java EXCEPTIONS IN JAVA

Διάλεξη Εισαγωγή στη Java, Μέρος B

ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 10: Exceptions handling (Χειρισμός εξαιρέσεων)

Κληρονομικότητα. Παύλος Εφραιμίδης pefraimi <at> ee.duth.gr. Java Κληρονομικότητα 1

ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ. Δηµοσθένης Σταµάτης Τµήµα Πληροφορικής

Προγραµµατισµός ΙΙ. Ηγλώσσααντικειµενοστραφούς. ιαχείριση Εξαιρέσεων. Εισαγωγή στη ιαχείριση Εξαιρέσεων

Αντικειμενοστρεφής Προγραμματισμός

Κλάσεις. Κατηγορίες Αντικειµένων. Κλάσεις. Φυσικά Αντικείµενα. Χώρος = Οµάδα Φυσικών Αντικειµένων. Πρόγραµµα = Οµάδα

Εξαιρέσεις (στη Java)

Εξαιρέσεις (στη Java) Vincent van Gogh, Irises, 1889

Εξαιρέσεις (στη Java)

NATIONAL & KAPODISTRIAN UNIVERSITY OF ATHENS. Διαχείριση Δικτύων. Nikolas Bompetsis

Σηµειώσεις Θεωρίας και Μέθοδοι. Κεφάλαιο: Παράγωγοι. και Cgδυο συναρτήσεων f και g εργαζόµαστε ως εξής: x,f(x ) και ( ) ó a

Οντοκεντρικός Προγραμματισμός

Κωστής Σαγώνας Πιάσιμο εξαιρέσεων (catching exceptions) Ρίψη εξαιρέσεων (throwing exceptions) Η πρόταση finally

Διασυνδέσεις / Διεπαφές. Παναγιώτης Σφέτσος, PhD

ΕΠΛ233 ΕΞΑΙΡΕΣΕΙΣ στη JAVA

Equase Κωδικός διανοµής :

Σχεδίαση-Ανάπτυξη Εφαρμογών Πληροφορικής - Εβδομάδα 1

Δηµοσθένης Σταµάτης Τµήµα Πληροφορικής T.E.I. ΘΕΣΣΑΛΟΝΙΚΗΣ

Εξαιρέσεις (στη Java)

KΕΦΑΛΑΙΟ ΣΧΕ ΙΑΣΜΟΣ ΙΕΠΑΦΗΣ ΧΡΗΣΤΗ

Προγραµµατισµός ΙΙ. Ηγλώσσααντικειµενοστραφούς. ιδάσκων ηµήτριος Κατσαρός, Τµ. Μηχανικών Η/Υ, Τηλεπικοινωνιών & ικτύων Πανεπιστήµιο Θεσσαλίας

ΚΕΦΑΛΑΙΟ 19 ΠΡΟΓΡΑΜΜΑΤΙΖΟΝΤΑΣ ΓΙΑΑΞΙΟΠΙΣΤΙΑ ΑΞΙΟΠΙΣΤΙΑ

Αρχές Τεχνολογίας Λογισμικού Εργαστήριο

Το πρόγραμμα HelloWorld.java. HelloWorld. Κλάσεις και Αντικείμενα (2) Ορισμός μιας Κλάσης (1) Παύλος Εφραιμίδης pefraimi <at> ee.duth.

ΠΡΟΟΔΕΥΤΙΚΗ ΑΡ. Μ.Α.Ε. 602/06/Β/86/04 ΓΕΜΗ Π Ρ Ο Σ Κ Λ Η Σ Η ΤΩΝ ΜΕΤΟΧΩΝ ΤΗΣ ΑΝΩΝΥΜΟΥ ΕΤΑΙΡΕΙΑΣ ΜΕ ΤΗΝ ΕΠΩΝΥΜΙΑ

Εξαιρέσεις (στη Java)

ΚΙΝΗΤΕΣ & ΟΡΥΦΟΡΙΚΕΣ ΕΠΙΚΟΙΝΩΝΙΕΣ 4 Ο ΚΕΦΑΛΑΙΟ ΠΑΡΕΜΒΟΛΕΣ ΤΕΙ ΙΟΝΙΩΝ ΝΗΣΩΝ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ

ΕΙΣΑΓΩΓΗ ΣΤΗ ΣΤΑΤΙΣΤΙΚΗ

Α Ι Τ Η Σ Η ΥΠΕΥΘΥΝΗ ΗΛΩΣΗ

Wrapper Classes, Abstract Classes and Interfaces

EVITA ΙΑΤΗΡΗΣΗ ΕΠΑΦΩΝ / ΗΜΙΟΥΡΓΙΑ ΕΜΠΙΣΤΟΣΥΝΗΣ. Σαντορίνη 28/04/2011 Βασίλειος Πα ανικολάου

ΗΥ252 Πρόοδος 24 Νοεμβρίου 2012 Σελίδα 2 από 8

Κλάσεις στη Java. Στοίβα - Stack. Δήλωση της κλάσης. ΗκλάσηVector της Java. Ηκλάση Stack

Παύλος Εφραιµίδης. Java. Κληρονοµικότητα

Εισαγωγή στον Προγ/μό Η/Υ

ΚΕΦΑΛΑΙΟ 20 ΕΠΑΝΑΧΡΗΣΙΜΟΠΟΙΗΣΗ ΛΟΓΙΣΜΙΚΟΥ

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εξαιρέσεις

Βασίλης Χριστοφίδης Επαναληπτική Εξέταση (3 ώρες) Ηµεροµηνία: 21 Σεπτεµβρίου 2012

ΝΗΡΕΥΣ ΙΧΘΥΟΚΑΛΛΙΕΡΓΕΙΕΣ ΑΝΩΝΥΜΗ ΕΤΑΙΡΙΑ Ε ΡΑ: ΗΜΟΣ ΚΟΡΩΠΙOY ΑΡΙΘΜΟΣ ΓΕΜΗ Π Ρ Ο Σ Κ Λ Η Σ Η. των Μετόχων σε Τακτική Γενική Συνέλευση

Java Μέρος Ι Αντικειμενοστρεφής Προγραμματισμός - 7

Διάλεξη 16-17: Πολυμορφισμός (Polymorphism) Διδάσκων: Παναγιώτης Ανδρέου

AFTER LIFE COMMUNICATION PLAN

Σχεσιακή Άλγεβρα. Κεφάλαιο 4. Database Management Systems, R. Ramakrishnan and J. Gehrke

java.lang Class Throwable

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 18/10/07

: Προκήρυξη θέσεων κλάδου γιατρών ΕΣΥ ΑΠΟΦΑΣΗ ΠΡΟΚΗΡΥΞΗ

Κλάσεις στη Java. Παύλος Εφραιμίδης. Java Κλάσεις στη Java 1

Εισαγωγή στον Αντικειμενοστρέφή Προγραμματισμό Διάλεξη #13

Προγραµµατισµός ΙΙ. Ηγλώσσααντικειµενοστραφούς. ιδάσκων ηµήτριος Κατσαρός, Τµ. Μηχανικών Η/Υ, Τηλεπικοινωνιών & ικτύων Πανεπιστήµιο Θεσσαλίας

(Διαφάνειες Νίκου Βιδάκη)

Προγράμματα με δομή Κληρονομικότητας

Διάλεξη 14: Εξαιρέσεις (Exceptions) Διδάσκων: Παναγιώτης Ανδρέου

Abstract classes, Interfaces ΦΡΟΝΤΙΣΤΗΡΙΟ JAVA

ΠΑΝΕΠΙΣΤΗΜΙΟ ΑΙΓΑΙΟΥ ΣΧΟΛΗ ΕΠΙΣΤΗΜΩΝ ΤΗΣ ΙΟΙΚΗΣΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΟΙΚΟΝΟΜΙΑΣ ΚΑΙ ΙΟΙΚΗΣΗΣ ΣΤΟΧΑΣΤΙΚΑ ΜΟΝΤΕΛΑ

ΑΠΛΗ ΚΛΗΡΟΝΟΜΙΚΟΤΗΤΑ

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Δομές Δεδομένων. Ιωάννης Γ. Τόλλης Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης

ΑΝΑΚΕΦΑΛΑΙΩΣΗ. Τα βασικά για την γλώσσα Java

Δομές Δεδομένων & Ανάλυση Αλγορίθμων. 3ο Εξάμηνο. Ουρά (Queue) Υλοποίηση της με τη βοήθεια πίνακα.

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ. Δομές Δεδομένων. Ιωάννης Γ. Τόλλης Τμήμα Επιστήμης Υπολογιστών Πανεπιστήμιο Κρήτης

02 Αντικειμενοστρεφής Προγραμματισμός

Γενικά (για τις γραπτές εξετάσεις)

Περιεχόμενα. Πρόλογος 15

HelloWorld. Παύλος Εφραιμίδης. Java Το πρόγραμμα HelloWorld 1

Διάλεξη 4. Νήματα (Threads) στην Java Συγχρονισμός Εξωτερικές διεργασίες Collections & Generics Διαχείριση σφαλμάτων στην Java

Στην Θεσσαλονίκη σήµερα την 12 Ιουνίου 2017, οι υ ογραφόµενοι:

ΣΤΑΤΙΣΤΙΚΗ. Ακαδ. Έτος Βασίλης ΚΟΥΤΡΑΣ. ιδάσκων: ιδάσκων ε ί Συµβάσει Π. 407/80.

ΑΝΑΚΟΙΝΩΣΗ υ ' αριθµ. 1/ 2014 για τη σύναψη ΣΥΜΒΑΣΗΣ ΕΡΓΑΣΙΑΣ ΟΡΙΣΜΕΝΟΥ ΧΡΟΝΟΥ Η Περιφερειακή Ενότητα Μεσσηνίας- ΑΟΚ Τριφυλίας

Αντικειµενοστρεφής Προγραµµατισµός

Ειδικά Θέματα Προγραμματισμού

ΚΙΝΗΤΕΣ & ΟΡΥΦΟΡΙΚΕΣ ΕΠΙΚΟΙΝΩΝΙΕΣ ΤΕΙ ΙΟΝΙΩΝ ΝΗΣΩΝ ΤΕΧΝΟΛΟΓΙΑΣ ΠΛΗΡΟΦΟΡΙΚΗΣ & ΤΗΛΕΠΙΚΟΙΝΩΝΙΩΝ

ΟΡΘΗ ΕΠΑΝΑΛΗΨΗ ΠΡΟΣΚΛΗΣΗ ΓΙΑ ΤΗ ΙΕΞΑΓΩΓΗ ΚΛΗΡΩΣΗΣ ΓΙΑ ΤΗ ΙΑΘΕΣΗ ΤΟΥ ΧΩΡΟΥ ΠΟΛΛΑΠΛΩΝ ΧΡΗΣΕΩΝ ΣΤΟ ΣΤΑΘΜΟ ΜΕΤΡΟ «ΣΥΝΤΑΓΜΑ» ΤΟ ΙΑΣΤΗΜΑ

Πριν α ό την έναρξη της συνεδρίασης ο Πρόεδρος δια ίστωσε ότι α ό τα εννέα (9) µέλη της Οικονοµικής Ε ιτρο ής ήταν:

Προγράμματα με δομή Κληρονομικότητας

ΠΡΟΣΚΛΗΣΗ ΓΙΑ ΤΗ ΙΕΞΑΓΩΓΗ ΚΛΗΡΩΣΗΣ ΓΙΑ ΤΗ ΙΑΘΕΣΗ ΤΟΥ ΧΩΡΟΥ ΠΟΛΛΑΠΛΩΝ ΧΡΗΣΕΩΝ ΣΤΟ ΣΤΑΘΜΟ ΜΕΤΡΟ «ΣΥΝΤΑΓΜΑ» ΤΟ ΙΑΣΤΗΜΑ

Προµήθεια Αναλωσίµων Ειδών Κυλικείου Κ.Α.Π.Η. Κωδ.Προϋ /σµού: 10/ ΤΕΧΝΙΚΗ ΕΚΘΕΣΗ

Περιεχόµενα. 1 Εισαγωγή στις οµές εδοµένων 3. 2 Στοίβα (Stack) 5

Κεφάλαιο 3 Βασική Σχεδίαση και Επεξεργασία

ΠΡΟΣΚΛΗΣΗ ΓΙΑ ΤΗ ΙΕΞΑΓΩΓΗ ΚΛΗΡΩΣΗΣ ΓΙΑ ΤΗ ΙΑΘΕΣΗ ΤΟΥ ΧΩΡΟΥ ΠΟΛΛΑΠΛΩΝ ΧΡΗΣΕΩΝ ΣΤΟ ΣΤΑΘΜΟ ΜΕΤΡΟ «ΣΥΝΤΑΓΜΑ» ΤΟ ΙΑΣΤΗΜΑ

AΝΑΡΤΗΤΕΟ ΣΤΟ ΙΑ ΙΚΤΥΟ. Αριθ. Πρωτ.: Ηµεροµηνία:

Transcript:

ΣΕΜΙΝΑΡΙΟ JAVA 5 η ιάλεξη

ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓ/ΣΜΟΣ & ΣΦΑΛΜΑΤΑ Εnumerators Κληρονοµικότητα Exceptions try / catch / finally Interfaces

ENUMERATORS ( ENUM ) Τα enum είναι ένα εργαλείο για να οριστεί ένα σύνολο τιµών ως τύ ος δεδοµένων. Είναι ουσιαστικά µια ειδική ερί τωση κλάσης. Για αράδειγµα εάν θέλαµε να χαρακτηρίσουµε την κατάσταση ενός αρχείου θα µ ορούσαµε να ούµε ότι αίρνει µία τιµή α ό τις: Ανύ αρκτο Ανοιχτό Κλειστό ιαγραµµένο Αυτό εκφράζεται στην Java µε τη χρήση των enums, µέσα σε ξεχωριστό αρχείο ό ως οι κλάσεις ως εξής: public enum FileStatus { Inexistent, Open, Closed, Deleted; }

ENUMERATORS ( ENUM ) Στη συνέχεια θα µ ορούσε να χρησιµο οιηθεί ως τύ ος δεδοµένων µε ένα κώδικα ό ως ο ακόλουθος: FileStatus status; status = FileStatus.Open; if (status == FileStatus.Closed)...κλπ Η µέθοδος αυτή υ ερτερεί α ό τις τεχνικές ου χρησιµο οιούνταν αλιότερα (.χ. Αντιστοίχιση ενός αριθµού σε µία κατάσταση) στα εξής σηµεία: Είναι ιο ξεκάθαρο το νόηµα ου έχει το σύνολο τιµών Α οφεύγονται τα «αριθµητικά τεχνάσµατα» ου µ ερδεύουν τον κώδικα και οδηγούν σε σφάλµατα Μετατρέ ονται µε εντολές του συστήµατος α ό και ρος κείµενο Στην ολοκληρωµένη τους µορφή, κάθε στοιχείο του συνόλου µ ορεί να έχει δικά του χαρακτηριστικά και µεθόδους ό ως ένα αντικείµενο, ου δίνει µια άλλη διάσταση στη χρήση τους Χρησιµο οιείται µε ξεκάθαρο τρό ο στην switch/case εντολή και µάλιστα είναι µία α ό τις λίγες ερι τώσεις ου η χρήση της switch/case ροτιµάται α ό τους ρογραµµατιστές.

ΚΛΗΡΟΝΟΜΙΚΟΤΗΤΑ CONTD. 1/ Άλλα θέµατα κληρονοµικότητας Copy contructor Equals overriding ToString overriding Ειδικά για τη Java Object object

ΠΑΡΑ ΕΙΓΜΑ - ΓΕΩΜΕΤΡΙΑ

ΙΕΡΑΡΧΙΑ ΓΕΩΜΕΤΡΙΚΩΝ ΣΧΗΜΑΤΩΝ PlaneEntity Entity2D Entity1D Point Polygon Ellipse Arc Spline Line Polyline Segment

ΙΕΡΑΡΧΙΑ ΓΕΩΜΕΤΡΙΚΩΝ ΣΧΗΜΑΤΩΝ PlaneEntity Ellipse (2D) Spline (1D) Line (1D) Point Arc (1D) Segment (1D) Polyline (1D) Polygon (2D) NormalPolygon (2D) Rectangle (2D) Square (2D)

ΚΛΗΡΟΝΟΜΙΚΟΤΗΤΑ CONTD. 2/ Interfaces Ό ως οι abstract κλάσεις, αλλά υ οχρεωτικά χωρίς κώδικα, άρα δεν έχει αφού δεν έχει νόηµα και µεταβλητές ου να την αφορούν Α οφεύγονται διφορούµενες δηλώσεις µεθόδων κλάσεων Το instanceof λειτουγρεί και για τα interfaces Έχουν ιεραρχική δοµή και ισχύει η κληρονοµικότητα Παράδειγµα το Comparable interface Για ένα άτοµο µε όνοµα, ε ώνυµο, ύψος, βάρος

EXCEPTIONS 1/ Υ οδεικνύουν σφάλµατα στην εκτέλεση ενός ρογράµµατος. Π.χ.: ArrayIndexOutOfBoundsException ClassCastException NullPointerException ArithmeticException StackOverflowError Ιεραρχία των Exceptions Exception βασική κλάση Checked Unchecked (.χ. runtime)

EXCEPTIONS 2/

EXCEPTIONS 3/ Όταν ροκύ τει ένα exception (γίνεται throw) τότε ρέ ει ο κώδικας να κάνει ένα α ό τα ακόλουθα: try και catch Στο try εκτελεί κώδικα µέσα στον ο οίο αναµένεται να ροκύψει κά οιο Exception Μετά ακολουθεί ένα ή ερισσότερα catch µε αράµετρο µια κλάση ου κληρονοµεί α ό την Exception Εάν όντως ροκύψει το Exception τότε εκτελείται ο κώδικας µε το catch ου αντιστοιχεί «καλύτερα» στο Exception ου ροέκυψε throws ηλώνει ότι η µέθοδος ου εριέχει τον κώδικα ου ιθανώς να δώσει το Exception, ότι υ άρχει αυτό το ενδεχόµενο finally Μ ορείτε και εσείς να κάνετε throw κά οιο Exception Μ ορείτε να δηµιουργήσετε και εσείς το δικό σας exception ως κλάση ου κληρονοµεί : Α ό το ίδιο το Exception class Α ό κά οιου άλλου τύ ου Exception

ΛΕΞΙΛΟΓΙΟ Αγγλικά Ελληνικά Ε εξήγηση inheritance κληρονοµικότητα interface διε αφή GUI ή graphical interface γραφική διε αφή exception Εξαίρεση / Σφάλµα Χρησιµο οιείται για να αραστήσει ένα σφάλµα του ρογράµµατος ου ροκύ τει κατά την εκτέλεση του stack trace - καµία δόκιµη µετάφραση - λίστα µε τις µεθόδους ου βρίσκονται υ ό εκτέλεση throw ρίχνω / ετάω Χρησιµο οιείται για να ούµε ότι αρουσιάστηκε κά οια εξαίρεση