Συντακτικά λάθη, λάθη εκτέλεσης, Λογικά λάθη
|
|
- Ημέρα Μητσοτάκης
- 8 χρόνια πριν
- Προβολές:
Transcript
1 Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Διάλεξη #7 η : Εξαιρέσεις (λάθη εκτέλεσης, χειρισμός εξαιρέσεων λαθών,) Είσοδος / Έξοδος (ρεύματα, κλάσεις εισόδου και εξόδου, διαχείριση αρχείων) Γαβαλάς Δαμιανός dgavalas@aegean.gr Συντακτικά λάθη, λάθη εκτέλεσης, Λογικά λάθη Έχετε μέχρι στιγμής μάθει για τρεις τύπους λαθών: Συντακτικά λάθη (syntax errors) Προκύπτουν όταν δεν ακολουθούνται οι (συντακτικοί) κανόνες της γλώσσας Τα ανιχνεύει ο μεταγλωττιστής (compiler) Λάθη εκτέλεσης (runtime errors) Προκύπτουν κατά τη διάρκεια της εκτέλεσης του προγράμματος, εφόσον το περιβάλλον ανιχνεύσει μια λειτουργία/εντολή που αδυνατεί να εκτελέσει Το πρόγραμμα κρεμάει («κρασάρει») Λογικά λάθη (logic errors) Προκύπτουν όταν το πρόγραμμα δεν λειτουργεί με τον επιθυμητό τρόπο 1
2 Λάθη εκτέλεσης 1 import java.util.scanner; 2 3 public class ExceptionDemo { Αν συμβεί μια εξαίρεση σε αυτή τη γραμμή (π.χ. ο χρήστης δε δώσει έν αν ακέραιο αλλά δεκαδικό αριθμό), οι υπόλοιπες γραμμές της μεθόδου δε θα εκτελεστούν και το 12 πρόγραμμα θα τερματίσει 13 Τερματισμός public static void main(string[] args) { Scanner scanner = new Scanner(System.in); System.out.print("Enter an integer: "); int number = scanner.nextint(); // Display the result System.out.println( "The number entered is " + number); Πως αντιμετωπίζονται τα λάθη εκτέλεσης Αν συμβεί μια εξαίρεση σε αυτή τη γραμμή, οι υπόλοιπες γραμμές στην ενότητα try δε θα εκτελεστούν και η εκτέλεση μεταφέρεται στην ενότητα catc h. import java.util.*; public class HandleExceptionDemo { public static void main(string[] args) { Scanner scanner = new Scanner(System.in); boolean continueinput = true; do { try { System.out.print("Enter an integer: "); int number = scanner.nextint(); // Display the result System.out.println( "The number entered is " + number); continueinput = false; catch (InputMismatchException ex) { System.out.println("Try again. (" + "Incorrect input: an integer is required)"); scanner.nextline(); // discard input while (continueinput); 2
3 Κλάσεις εξαιρέσεων (exception classes) ClassNotFoundException IOException ArithmeticException Exception AWTException Nu llpoin terexception Run timeexception Ind exoutofboundsexception Object Throwable Πολλές ακόμα κλάσεις IllegalArgumentException LinkageError Πολλές ακόμα κλάσεις VirtualMachineError Error AWTError Πολλές ακόμα κλάσεις Κλάσεις εξαιρέσεων: Η κλάση Throwable 3
4 Κλάσεις εξαιρέσεων: Λάθη (Errors), Εξαιρέσεις (Exceptions) και Εξαιρέσεις Εκτέλεσης (RuntimeExceptions) Κλάσεις εξαιρέσεων: Λάθη συστήματος (System Errors), Εξαιρέσεις (Exceptions) και Εξαιρέσεις Εκτέλεσης (Runtime Exceptions) Λάθη συστήματος «πετάγονται» από τη JVM και αναπαρίστανται από την κλάση Error, η οποία εσωτερικά λάθη συστήματος. Τέτοια λάθη συμβαίνουν σπάνια, όταν συμβούν δεν μπορείς να κάνει πολλά παρά να ενημερώσεις το χρήστη και να τερματίσεις το πρόγραμμα. Η κλάση Exception περιγράφει λάθη που προκαλούνται από το πρόγραμμα και εξωτερικές περιστάσεις. Τα προγράμματα μπορούν να «συλλάβουν» και να χειριστούν τέτοια λάθη. Ένα RuntimeException προκαλείται από προγραμματιστικά λάθη, όπως κακές μετατροπές (casting), πρόσβαση σε στοιχεία πινάκων που δεν υφίστανται (out of bounds array), αριθμητικά λάθη 4
5 Ελεγμένες και μη ελεγμένες εξαιρέσεις (checked & unchecked) Οι RuntimeException, Error και οι υποκλάσεις τους είναι γνωστές ως μη ελεγμένες εξαιρέσεις Αφορούν συνήθως σε προγραμματιστικά λογικά λάθη από τα οποία μπορείς να επανακάμψεις, π.χ. μία NullPointerException «πετάγεται» αν προσπαθήσεις να προσπελάσεις ένα αντικείμενο μέσω μιας μεταβλητής αναφοράς πριν πραγματικά καταχωρηθεί ένα αντικείμενο (τιμή) σε αυτή, ενώ ένα IndexOutOfBoundsException «πετάγεται» αν προσπελάσεις ένα στοιχείο ενός array εκτός των ορίων του. Για να αποφευχθεί υπερχρήση από ενότητες try catch, η Java δεν υποχρεώνει να αντιμετωπίσεις όλες τις πιθανές μη ελεγμένες εξαιρέσεις. Ελεγμένες και μη ελεγμένες εξαιρέσεις (checked & unchecked) Όλες οι υπόλοιπες είναι γνωστές ως ελεγμένες, δηλαδή ο μεταγλωττιστής αναγκάζει τον προγραμματιστή να τις ελέγξει και να τις αντιμετωπίσει Παραδείγματα ελεγμένων εξαιρέσεων: Ένα πρόγραμμα που προσπαθεί να ανοίξει ένα αρχείο (που δηλώνεται από το χρήστη) το οποίο δεν υπάρχει Ο χρήστης πληκτρολογεί μια URL που δεν υφίσταται Και τα δύο παραπάνω παραδείγματα θα μπορούσαν να συμβούν από ένα λάθος πληκτρολόγησης Εφόσον αυτά τα λάθη μπορούν να συμβούν ως αποτέλεσμα λάθους, η Java υποχρεώνει τον προγραμματιστή να τα χειριστεί 5
6 Ενότητες try catch Για να αντιμετωπίσουμε μια συγκεκριμένη εξαίρεση κλείνουμε το τμήμα του κώδικα που ενδέχεται να πετάξει την εξαίρεση σε μια ενότητα try Για να συλλάβουμε και να αντιδράσουμε στην εξαίρεση, εφόσον προκύψει, κλείνουμε κάποιο κώδικα σε μια ενότητα catch try { // κώδικας που ενδέχεται να προκαλέσει εξαίρεση catch (ExceptionType e) { // κώδικας που εκτελείται εφόσον προκύψει η εξαίρεση τύπου ExceptionType Παράδειγμα exception public class TestException { public static void main (String args[]) { int i=0; String greetings[] = { one, two, three ; while (i<4) { System.out.println (greetings[i]); i++; System.out.println( Μετά t tl ά το βρόγχο ); one two three Αποτέλεσμα της εκτέλεσης Exception in thread "main" java.lang.arrayindexoutofboundsexception: 3 at TestException.main(TestException.java:6) 6
7 Παράδειγμα exception public class TestException { public static void main (String args[]) { int i=0; String greetings[] = {"one", "two", "three"; while (i<4) { try { System.out.println (greetings[i]); catch (ArrayIndexOutOfBoundsException e) { System.out.println ("Έπιασα μια εξαίρεση!!"); Αποτέλεσμα i++; της one εκτέλεσης two System.out.println ("Μετά το βρόγχο..."); three Έπιασα μια εξαίρεση!! Μετά το βρόγχο... Παράδειγμα exception Το πρόγραμμα του προηγούμενου παραδείγματος δεν τερματίστηκε λόγω λάθους Η εξαίρεση είχε προβλεφθεί ως ενδεχόμενο και όταν προέκυψε το πρόγραμμα τη χειρίστηκε εκτελώντας τις εντολές της ενότητας catch (τυπώθηκε το «Έπιασα μια εξαίρεση!!» Βέβαια, σε μια τέτοια περίπτωση που προκύπτει από ένα λογικό λάθος, καταλληλότερη λό αντιμετώπιση θα ήταν (αφότου ελέγχαμε την εκτέλεση του κώδικα και βλέπαμε ότι πετάγεται η εξαίρεση) απλώς να αλλάξουμε τον αριθμό επαναλήψεων (while (i<3)) 7
8 Η λέξη κλειδί finally Η finally ορίζει μια ενότητα εντολών που εκτελείται πάντα, είτε έχει συλληφθεί μια εξαίρεση είτε όχι Η μόνη περίπτωση να μην εκτελεστεί είναι να έχει κληθεί πριν η μέθοδος System.exit(), η οποία προκαλεί τον τερματισμό του προγράμματος try { // κώδικας που ενδέχεται να προκαλέσει εξαίρεση catch (ExceptionType e) { // κώδικας που εκτελείται εφόσον προκύψει η εξαίρεση τύπου ExceptionType finally { // αυτός ο κώδικας θα εκτελεστεί έτσι κι αλλιώς Συνήθεις εξαιρέσεις ArithmeticException Τυπικά το αποτέλεσμα διαίρεσης με το μηδέν για ακεραίους π.χ. int i = 12/0; NullPointerException Γίνεται μια προσπάθεια να προσπελαστεί ένα αντικείμενο ή μέθοδός του πριν ακόμα δημιουργηθεί ένα στιγμιότυπό του π.χ. Circle circles[] = new Circle[3]; System.out.println(circles[0].getRadius()); Στο προηγούμενο παράδειγμα, παρότι δεσμεύθηκε χώρος για ένα πίνακα που έχει 3 αντικείμενα της κλάσης Circle, δεν έχει ακόμα δημιουργηθεί το στιγμιότυπο που θα αποτελέσει το πρώτο στοιχείο του array 8
9 Συνήθεις εξαιρέσεις NegativeArraySizeException Γίνεται προσπάθεια να δημιουργηθεί ένας πίνακας με αρνητικό ρη πλήθος στοιχείων ArrayIndexOutOfBoundsException Γίνεται προσπάθεια να προσπελαστεί ένα στοιχείο ενός πίνακα πέρα από το πραγματικό πλήθος στοιχείων που έχει οριστεί για τον πίνακα SecurityException Συνήθως εμφανίζεται σε ένα browser όταν η κλάση SecurityManager πετάει μια εξαίρεση για κάποιο applet που προσπαθεί: Να προσπελάσει ένα τοπικό αρχείο Να ανοίξει σύνδεση (socket) με κάποιο απομακρυσμένο Η/Υ Να εκτελέσει ένα άλλο πρόγραμμα στο περιβάλλον εκτέλεσης Πότε να χρησιμοποιείτε Exceptions Πότε πρέπει να χρησιμοποιείτε τις try catch ενότητες στον κώδικα; Πρέπει να τον χρησιμοποιείτε μη αναμενόμενες συνθήκες λάθους, όχι για να αντιμετωπίσετε απλές, αναμενόμενες καταστάσεις, π.χ. o ακόλουθος κώδικας: try { System.out.println(var.toString()); catch (NullPointerException ex) { System.out.println("var is null"); 9
10 Πότε να χρησιμοποιείτε Exceptions είναι καλύτερο να αντικατασταθεί από τον παρακάτω: if (var!= null) System.out.println(var.toString()); else System.out.println("var is null"); Ορίζοντας εξαιρέσεις (Declaring Exceptions) Κάθε μέθοδος πρέπει να ορίζει τους τύπους των ελεγμένων εξαιρέσεων που μπορεί να «πετάξει» Αυτό είναι γνωστό ως ορισμός εξαιρέσεων, π.χ.: public void mymethod() throws IOException public void mymethod() throws IOException, OtherException 10
11 «Πέταγμα» ή «ρίξιμο» εξαιρέσεων Όταν ένα πρόγραμμα εντοπίζει ένα λάθος, μπορεί να δημιουργήσει και να «πετάξει»/«ρίξει» ένα κατάλληλο τύπου εξαίρεσης, π.χ.: : throw new TheException(); /** Ορίζει μια νέα ακτίνα */ public void setradius(double newradius) throws IllegalArgumentException { if (newradius >= 0) radius = newradius; else throw new IllegalArgumentException( "Radius cannot be negative"); Όλα μαζί: ορίζοντας, πετάγοντας και συλλαμβάνοντας εξαιρέσεις Η Java θα μας αναγκάσει να αντιμετωπίσουμε την εξαίρεση που ενδέχεται να πετάξει μία μέθοδος μόνο αν πρόκειται για ελεγμένη εξαίρεση Η χρήση try catch είναι υποχρεωτική εδώ μόνο αν η Exception είναι τύπου ελεγμένης (checked) εξαίρεσης, διαφορετικά είναι προαιρετική catch exception method1() { try { invoke method2; catch (Exception ex) { Process exception; method2() throws Exception { if (an error occurs) { throw new Exception(); declare exception throw exception 11
12 Ρεύματα (streams) Κλάσεις εισόδου και εξόδου Διαχείριση αρχείων Εισαγωγικές παρατηρήσεις Είσοδος (input): Η εισαγωγή δεδομένων από τον εξωτερικό κόσμο κατά την εκτέλεση ενός προγράμματος. Έξοδος (output): Η αντίστροφη διαδικασία με την οποία τα αποτελέσματα ενός προγράμματος γίνονται γνωστά στον εξωτερικό κόσμο. Είσοδος / Έξοδος (Input/Output Ι/Ο) στη Java: Υποστηρίζεται ένας μεγάλος αριθμός κλάσεων για την υλοποίηση λειτουργιών Ι/Ο Βρίσκονται στο πακέτο java.io Αποτελούν υποκλάσεις των βασικών κλάσεων InputStream και OutputStream. 12
13 Ρεύματα (streams) Στη Java όλες οι θεμελιώδεις λειτουργίες Ι/Ο βασίζονται στη χρήση ρευμάτων (streams) Ένα ρεύμα: Αντιπροσωπεύει μια ροή δεδομένων ή ένα κανάλι επικοινωνίας Έχει ένα συγγραφέα στο ένα του άκρο και έναν αναγνώστη στο άλλο Στη Java τα ρεύματα αποτελούν δρόμους μιας κατεύθυνσης Οι κλάσεις InputStream και OutputStream: Είναι αφηρημένες ορίζουν το κατώτατο επίπεδο διεπαφής για όλα τα ρεύματα Περιέχουν μεθόδους για την ανάγνωση και εγγραφή αντίστοιχα μιας ροής μη δομημένων δεδομένων, σε επίπεδο bytes Υλοποιούνται υποκλάσεις αυτών των κλάσεων για την ανάγνωση και εγγραφή αρχείων, την επικοινωνία μέσω θυρίδων, κ.λπ. Ρεύματα (streams) Οι κλάσεις InputStream και OutputStream αντιπροσωπεύουν τα άκρα ενός απλού ρεύματος. Για αμφίδρομες μ επικοινωνίες χρειάζονται και οι δύο τύποι ρευμάτων. 13
14 Κλάσεις Εισόδου και Εξόδου InputStream, OutputStream: Αφηρημένες κλάσεις που ορίζουν μεθόδους για την ανάγνωση και την εγγραφή δεδομένων με τη μορφή μη δομημένων ακολουθιών από bytes Όλοι οι υπόλοιποι τύποι ρευμάτων προέρχονται από τις δύο αυτές βασικές κλάσεις DataInputStream, DataOutputStream: Εξειδικευμένα φίλτρα ρευμάτων που επιτρέπουν την ανάγνωση και εγγραφή απλών τύπων δεδομένων, όπως στοιχειώδη αριθμητικά δεδομένα και αντικείμενα τύπου String BufferedInputStream, BufferedOutputStream: Εξειδικευμένα φίλτρα ρευμάτων που ενσωματώνουν τη λειτουργία της προσωρινής αποθήκευσης δεδομένων για επίτευξη μεγαλύτερης αποδοτικότητας Κλάσεις Εισόδου και Εξόδου PrintStream: Εξειδικευμένο φίλτρο που βοηθά στην εκτύπωση κειμένου PipedInputStream, PipedOutputStream: tst Είναι ρεύματα διπλού άκρου και εμφανίζονται πάντα σε ζεύγη. Τα δεδομένα που γράφονται σε ένα ρεύμα τύπου PipedOutputStream διαβάζονται από το αντίστοιχο PipedInputStream FileInputStream, FileOutputStream: Είναι υλοποιήσεις των ρευμάτων InputStream και OutputStream με τις οποίες γίνεται η ανάγνωση και εγγραφή τοπικών αρχείων 14
15 Απλή Είσοδος / Έξοδος Αντικείμενο System.in: Υλοποιεί την κοινή είσοδος (standard input) μιας εφαρμογής Java. Προέρχεται ρχ από υποκλάση της InputStream. Διαβάζει δεδομένα από το περιβάλλον εκτέλεσης του προγράμματος συνήθως από κάποιο τερματικό ή παράθυρο. Μέθοδος read της InputStream: Επιτρέπει την ανάγνωση ενός byte κάθε φορά από την κοινή είσοδο. Παρέχει ένα byte πληροφορίας και επιστρέφει έναν ακέραιο αριθμό. Μια τιμή επιστροφής ίση με 1 δηλώνει ότι ο τερματισμός του ρεύματος έγινε κανονικά. Αν προκύψει κάποιο λάθος κατά τη διάρκεια της ανάγνωσης, δημιουργείται μια εξαίρεση τύπου IOException. Όλες οι βασικές εντολές I/O μπορεί να προκαλέσουν IOException > απαιτείται η ανίχνευση και ο κατάλληλος χειρισμός τους. Απλή Είσοδος / Έξοδος: Παράδειγμα Ανάγνωση μιας ακολουθίας μέχρι 256 bytes από την κοινή είσοδο (ο χρήστης πληκτρολογεί στο command prompt) try { byte [] data = new byte[256]; /* Διαβάζει δεδομένα που δίνει ο χρήστης και επιστρέφει τον αριθμό των bytes (χαρακτήρων) που δόθηκαν */ int bytesread = System.in.read(data); if (bytesread < 256) System.out.println( Not enough bytes to read! ); else // Εντολές για επεξεργασία δεδομένων catch (IOException e) { System.out.println( Something went wrong! ); 15
16 Απλή Είσοδος / Έξοδος Αντικείμενο System.out: Υλοποιεί την κοινή έξοδο (standard output). Αντικείμενο System.err: err: Υλοποιεί την έξοδο σφαλμάτων (standard error output). Τα δύο αυτά αντικείμενα: Προέρχονται από κάποια υποκλάση της PrintStream που κληρονομεί την OutputStream. Εκτυπώνουν συνήθως σε κάποιο τερματικό ή παράθυρο. ρ Ρεύματα Δεδομένων Κλάσεις DataInputStream και DataOutputStream: Υλοποιούν φιλτραρισμένα ρεύματα Επιτρέπουν την ανάγνωση ή εγγραφή συμβολοσειρών και στοιχειωδών τύπων δεδομένων που αποτελούνται από περισσότερα του ενός bytes Tα αντίστοιχα ρεύματα ονομάζονται ρεύματα δεδομένων (data streams) και μπορούν να χρησιμοποιηθούν ως φίλτρα πάνω σε κάθε τύπου ρεύματα Υλοποιούν τις διεπαφές DataInput και DataOutput. Παράδειγμα: DataInputStream s = new DataInputStream(System.in); String line = s.readline(); To DataInputStream περιβάλλει το ρεύμα κοινής εισόδου και το χρησιμοποιεί για την ανάγνωση μιας γραμμής κειμένου Η μέθοδος readline διαβάζει bytes μέχρι το τέλος της γραμμής 16
17 Ρεύματα Δεδομένων Μέθοδος readint: Χρησιμοποιείται για την ανάγνωση ακέραιων τιμών. int i = s.readint(); Διαβάζει 4 bytes από το ρεύμα και τα μετατρέπει σε έναν ακέραιο 32 bit Κλάση DataOutputStream: Παρέχει μεθόδους εγγραφής που αντιστοιχούν στις μεθόδους ανάγνωσης της DataInputStream. Παράδειγμα: H μέθοδος writeint γράφει έναν ακέραιο σε δυαδική μορφή στο ρεύμα εξόδου του εσωτερικού στρώματος Παράδειγμα Ι Ανάγνωση ενός πίνακα από bytes από το πληκτρολόγιο: import java.io.*; class ReadBytes { public static void main(string args[]) throws IOException { byte data [] = new byte[10]; System.out.println( Πληκτρολόγησε μερικούς χαρακτήρες: ); System.in.read(data); y ( ) System.out.print( Πληκτρολόγησες: ); // Θα τυπωθούν μέχρι 10 χαρακτήρες (τόσους χωράει το array) for (int i=0; i<data.length; i++) System.out.print((char) data[i]); 17
18 Παράδειγμα ΙΙ Υπολογισμός του μέσου όρου μιας λίστας αριθμών που δίνονται από το χρήστη: public static void main(string i args[]) throws IOException { BufferedReader br = new BufferedReader(new InputStreamReader(System.in)); String str; int n; double sum = 0.0; 0; double avg, t; System.out.print("Πόσους αριθμούς θέλεις να δώσεις; "); str = br.readline(); Παράδειγμα ΙΙ (συνέχεια) try { n = Integer.parseInt(str); catch(numberformatexception exc) { System.out.println("Λάθος είσοδος"); n = 0; System.out.println("Δώσε " + n + " τιμές."); for (int i=0; i<n; i++) { System.out.print(": "); str = br.readline(); 18
19 Παράδειγμα ΙΙ (συνέχεια) try { t = Double.parseDouble(str); catch(numberformatexception exc) { System.out.println("Λάθος είσοδος"); t = 0.0; sum += t; avg = sum / n; System.out.println("Μέσος όρος: " + avg); Διαχείριση Αρχείων Οι εφαρμογές Java μπορούν να διαβάσουν και να γράψουν αρχεία: Τα αρχεία βρίσκονται στο τοπικό σύστημα αρχείων Χρησιμοποιούνται τα προνομία του χρήστη που εκτελεί τις εφαρμογές Γίνεται χρήση της κλάσης File Για τη διαχείριση ενός αρχείου του τοπικού συστήματος αρχείων: Αρχικά ορίζεται ένα αντικείμενο τύπου File Σημαντικοί κατασκευαστές (constructors): File f1 = new File( /one/path/file.txt ); Καθορίζει το πλήρες όνομα ενός αρχείου File f2 = new File( /one/path, file.txt ); Καθορίζει το όνομα του αρχείου και το ευρετήριο στο οποίο βρίσκεται Το αντικείμενο τύπου File δημιουργείται ακόμα και αν τα αρχεία που καθορίζονται δεν υπάρχουν Μετά τη δημιουργία, χρήση των μεθόδων της κλάσης File 19
20 Μέθοδοι της Κλάσης File Ρεύματα Αρχείων Κλάσεις FileInputStream και FileOutputStream: Είναι δύο εξειδικευμένα ρεύματα για την ανάγνωση και την εγγραφή αρχείων Παρέχουν τη βασική λειτουργικότητα των InputStream και OutputStream προσαρμοσμένη στην ανάγνωση και την εγγραφή δεδομένων που περιέχονται σε αρχεία Ρεύμα FileInputStream: Μπορεί να δημιουργηθεί με βάση μια συμβολοσειρά που περιγράφει το όνομα του αρχείου ή ένα αντικείμενο File: FileInputStream s1 = new FileInputStream( dir/file ); File f = new File( tmp/foo.txt ); FileInputStream s2 = new FileInputStream(f); Μετά τη δημιουργία η Java επιχειρεί να ανοίξει το συγκεκριμένο αρχείο 20
21 Ρεύματα Αρχείων Ρεύμα FileInputStream (συνέχεια): Αν το αρχείο δεν υπάρχει, προκαλείται μια εξαίρεση τύπου FileNotFoundException Σε περίπτωση που προκληθεί κάποιο άλλο λάθος Ι/Ο η εξαίρεση είναι τύπου IOException Ο κώδικας της εφαρμογής πρέπει να ανιχνεύει και να χειρίζεται τις εξαιρέσεις αυτές Όταν ένα ρεύμα δημιουργείται για πρώτη φορά, η μέθοδος available και η μέθοδος length του αντικειμένου File επιστρέφουν την ίδια τιμή Επιβάλλεται η κλήση της μεθόδου close μετά το πέρας των εργασιών που αφορούν το αρχείο Ρεύματα Αρχείων: Παράδειγμα File f = new File( message.txt ); FileOutputStream s = new FileOutputStream(f); PrintStream p = new PrintStream(s); try { p.println( Hello World ); p.close(); catch() {/* ignore */ Κατασκευάζει ένα νέο αρχείο με όνομα message.txt και γράφει μέσα σε αυτό τη φράση Hello World. Για την εκτύπωση χρησιμοποιεί ένα φίλτρο τύπου PrintStream Όλες οι εξαιρέσεις που μπορούν να προκύψουν ως ενδείξεις σφαλμάτων αγνοούνται 21
6. Εξαιρέσεις στη γλώσσα Java
6. Εξαιρέσεις στη γλώσσα Java Με το τέλος αυτού του κεφαλαίου θα μπορείτε: Να ορίζετε εξαιρέσεις Να εξηγείτε γιατί είναι σημαντικός ο χειρισμός των εξαιρέσεων Να γράφετε κώδικα για να συλλαμβάνετε εξαιρέσεις
Αντικειμενοστρεφής Προγραμματισμός
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Αντικειμενοστρεφής Προγραμματισμός Ενότητα 11: Χειρισμός Σφαλμάτων Γρηγόρης Τσουμάκας, Επικ. Καθηγητής Άδειες Χρήσης Το παρόν εκπαιδευτικό
Εξαιρέσεις (Exceptions) Λάθη (Errors) Χειρισμός των Εξαιρέσεων (Exception Handling) Assertions
(Object Oriented Programming) Εξαιρέσεις (Exceptions) Λάθη (Errors) Χειρισμός των Εξαιρέσεων (Exception Handling) Assertions PhD http://aetos.it.teithe.gr/~sfetsos/ sfetsos@it.teithe.gr Περιεχόμενα Μαθήματος
Χειρισµός Σφαλµάτων. Γρηγόρης Τσουµάκας. Τµήµα Πληροφορικής, Αριστοτέλειο Πανεπιστήµιο Θεσσαλονίκης. Έκδοση:
Χειρισµός Σφαλµάτων Γρηγόρης Τσουµάκας Τµήµα Πληροφορικής, Αριστοτέλειο Πανεπιστήµιο Θεσσαλονίκης Έκδοση: 2010.12.06 Σφάλµατα, Σφάλµατα, Σφάλµατα 2 εν υπάρχουν προγράµµατα χωρίς λογικά λάθη Υλοποίηση που
ΕΙΣΟ ΟΣ-ΕΞΟ ΟΣ Ε ΟΜΕΝΩΝ
ΕΙΣΟ ΟΣ-ΕΞΟ ΟΣ Ε ΟΜΕΝΩΝ Στην java οι πληροφορίες αποθηκεύονται και ανακαλούνται/ανασύρονται µε τη χρήση ενός συστήµατος επικοινωνίας που χρησιµοποιεί την έννοια του stream (κανάλι επικοινωνίας). Σαν stream
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εξαιρέσεις
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εξαιρέσεις Εξαιρέσεις Στα προγράμματα μας θα πρέπει να μπορούμε να χειριστούμε περιπτώσεις που το πρόγραμμα δεν εξελίσσεται όπως το είχαμε προβλέψει Π.χ., κάνουμε
ΕΞΑΙΡΕΣΕΙΣ. Εξαιρέσεις προκαλούνται. από το σύστηµα. από το πρόγραµµα
ΕΞΑΙΡΕΣΕΙΣ Εξαίρεση (Exception): Ένα συµβάν κατά τον χρόνο εκτέλεσης (π.χ. αδυναµία ανοίγµατος αρχείου ή ανάγνωσης πληροφορίας, µη ύπαρξη αντικειµένου στη στοίβα) που απαιτεί ειδικό χειρισµό. Ονοµάζεται
Πρόγραµµα 9.1 Πέρασµα δεδοµένων στην µνήµη
9.1 Γενικά Οι εφαρµογές που δηµιουργούνται από ένα προγραµµατιστή µπορούν ανά πασά στιγµή να καταρρεύσουν από κάποιο λάθος κατά την λειτουργία τους. Αυτές οι καταστάσεις συµβαίνουν από αµέλεια του προγραµµατιστή
ΕΙΣΟ ΟΣ-ΕΞΟ ΟΣ Ε ΟΜΕΝΩΝ
ΕΙΣΟ ΟΣ-ΕΞΟ ΟΣ Ε ΟΜΕΝΩΝ Στην java οι πληροφορίες αποθηκεύονται και ανακαλούνται/ανασύρονται µε τη χρήση ενός συστήµατος επικοινωνίας που χρησιµοποιεί την έννοια του stream (κανάλι επικοινωνίας). Σαν stream
Προγραμματισμός ΙΙ (Java) 4. Διαχείριση εξαιρέσεων
Προγραμματισμός ΙΙ (Java) 4. Διαχείριση εξαιρέσεων Διαχείριση λαθών Εξαιρέσεις Δημιουργία Ανίχνευση Διαχείριση Βασικοί τύποι εξαιρέσεων Δημιουργία τύπων εξαίρεσης 2 Αντιμετώπιση λαθών Υπάρχουν λάθη χρόνου
ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 12: Ροές και είσοδος/έξοδος αρχείων
ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 12: Ροές και είσοδος/έξοδος αρχείων Μιχάλης Δρακόπουλος Σχολή Θετικών επιστημών Τμήμα Μαθηματικών ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (Java) Ενότητα 12 Ροές και είσοδος/έξοδος αρχείων Τα δεδομένα εισόδου
Οντοκεντρικός Προγραμματισμός
Οντοκεντρικός Προγραμματισμός Ενότητα 3: JAVA: ΕΞΑΙΡΕΣΕΙΣ, ΕΙΣΟΔΟΣ-ΕΞΟΔΟΣ, ΝΗΜΑΤΑ Εξαιρέσεις ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής ΕΞΑΙΡΕΣΕΙΣ
Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 9 : ΕΞΑΙΡΕΣΕΙΣ ΚΑΙ Ο ΧΕΙΡΙΣΜΟΣ ΤΟΥΣ
Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 9 : ΕΞΑΙΡΕΣΕΙΣ ΚΑΙ Ο ΧΕΙΡΙΣΜΟΣ ΤΟΥΣ EXCEPTIONS & EXCEPTION HANDLING Εξαιρέσεις (Exceptions) Γνωμικό της Μηχανικής Λογισμικού: το 80% της δουλειάς των μηχανικών
Αρχεία και Ρεύματα. Αρχεία
Αρχεία Αρχεία και Ρεύματα sequential files(σειριακά αρχεία) direct access(απ'ευθείας πρόσβασης) Ρεύματα (I/O Streams) Ένα ρεύμα είναι μια σειριακή ροή δεδομένων από μία πηγή προς έναν προορισμό. Όταν ένα
ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός. Είσοδος Έξοδος (Input Output) Εξαιρέσεις (Exceptions)
ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός Παναγιώτης Σφέτσος sfetsos@it.teithe.gr Είσοδος Έξοδος (Input Output) Εξαιρέσεις (Exceptions) Οι εφαρμογές της Java είναι
ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 10: Exceptions handling (Χειρισμός εξαιρέσεων)
ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 10: Exceptions handling (Χειρισμός εξαιρέσεων) Μιχάλης Δρακόπουλος Σχολή Θετικών επιστημών Τμήμα Μαθηματικών ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (Java) Ενότητα 10 Exceptions handling (Χειρισμός εξαιρέσεων)
Αντικειμενοστρεφής Προγραμματισμός
Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Αντικειμενοστρεφής Προγραμματισμός 30/5/2016 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Χειρισμός Εξαιρέσεων Εξαίρεση (Exception) ένδειξη
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java II
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java II Strings Η κλάση String είναι προκαθορισμένη κλάση της Java που μας επιτρέπει να χειριζόμαστε αλφαριθμητικά. Ο τελεστής + μας επιτρέπει
Οντοκεντρικός Προγραμματισμός ΦΡΟΝΤΙΣΤΗΡΙΟ JAVA
Οντοκεντρικός Προγραμματισμός ΦΡΟΝΤΙΣΤΗΡΙΟ JAVA Αρχεία δεδομένων Το πακέτο java.io περιλαμβάνει περισσότερες από 60 κλάσεις και διασυνδέσεις για το χειρισμό αρχείων δεδομένων. Αρκετές από τις κλάσεις του
Εισαγωγή στη JAVA. Εισαγωγή στη Java. Η Java είναι δημιούργημα της SUN MICROSYSTEMS.
Εισαγωγή στη JAVA Σύντομο Ιστορικό Η Java και το διαδίκτυο Το πρώτο απλό πρόγραμμα σε JAVA Μεταβλητές και σταθερές Παραστάσεις και εντολές Οι βασικοί τύποι δεδομένων στη Java Οι βασικοί Τελεστές στη Java
Γενικά (για τις γραπτές εξετάσεις)
Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Διάλεξη #12 η : Επανάληψη Γαβαλάς Δαμιανός dgavalas@aegean.gr Γενικά (για τις γραπτές εξετάσεις) Δεν υπάρχει αυστηρά ορισμένη «ύλη εξετάσεων» (καθώς δεν έχετε
Εισαγωγή στον Προγραμματισμό
Εισαγωγή στον Προγραμματισμό Ακαδημαϊκό έτος 2010/2011 Επιμέλεια Ξενοφών Βασιλάκος Περιεχόμενα Φροντιστηρίου A. Πρωταρχικοί τύποι B. Είσοδος/ Έξοδος C. Πράξεις 2 Δήλωση / Αρχικοποίηση / Εκχώρηση A. Πρωταρχικοί
Προγραµµατισµός ΙΙ. Ηγλώσσααντικειµενοστραφούς. ιαχείριση Εξαιρέσεων. Εισαγωγή στη ιαχείριση Εξαιρέσεων
Προγραµµατισµός ΙΙ Ηγλώσσααντικειµενοστραφούς προγραµµατισµού Java ιδάσκων ηµήτριος Κατσαρός, Ph.D. @ Τµ. Μηχανικών Η/Υ, Τηλεπικοινωνιών & ικτύων Πανεπιστήµιο Θεσσαλίας ιάλεξη 6η: 06/04/2006 1 ιαχείριση
Διαδικτυακές Εφαρμογές Ενότητα 4: Streams
Διαδικτυακές Εφαρμογές Ενότητα 4: Streams Μιχάλας Άγγελος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό υλικό,
Το πρόγραμμα HelloWorld.java. HelloWorld. Κλάσεις και Αντικείμενα (2) Ορισμός μιας Κλάσης (1) Παύλος Εφραιμίδης pefraimi <at> ee.duth.
Το πρόγραμμα HelloWorld.java Σχόλια στη Java HelloWorld Παύλος Εφραιμίδης pefraimi ee.duth.gr Java Το πρόγραμμα HelloWorld 1 Java Το πρόγραμμα HelloWorld 2 Σχόλια στη Java ΗγλώσσαJava υποστηρίζει
ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 22/11/07
Ακαδ έτος 2007-2008 ΠΛΗΡΟΦΟΡΙΚΗ Ι Φερεντίνος 22/11/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με ΑΜ σε 3, 7, 8 & 9 22/11/07 Παράδειγμα με if/else if και user input: import javautil*; public class Grades public
10.1 Γενικά για τα streams
10.1 Γενικά για τα streams Για την αλληλεπίδραση ενός προγράµµατος µε ένα αρχείο, δηλαδή για την αποθήκευση ή την ανάγνωση δεδοµένων από αυτό χρησιµοποιείται ένα σύστηµα επικοινωνίας που καλείται streams.
ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07
ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07 Αριθμητική στο δυαδικό σύστημα (γενικά) Συμπληρωματικά για δυαδικό σύστημα Η πρόσθεση στηρίζεται στους κανόνες: 0 + 0 = 0, 0 + 1 = 1, 1
I (JAVA) Ονοματεπώνυμο: Α. Μ.: Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην.
I (JAVA) Ονοματεπώνυμο: Α. Μ.: + ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην. + 1 ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ (σελ. 2/3) 2 ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ (σελ. 3/3)
Ειδικά Θέματα Προγραμματισμού
Ειδικά Θέματα Προγραμματισμού Ενότητα 3: Τύποι Δεδομένων - Τελεστές Μιχάλας Άγγελος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αρχεία
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αρχεία Ρεύματα Τι είναι ένα ρεύμα (ροή)? Μια αφαίρεση που αναπαριστά μια ροή δεδομένων Η ροή αυτή μπορεί να είναι εισερχόμενη προς το πρόγραμμα (μια πηγή δεδομένων)
ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 6/12/07
Πρώτοι αριθμοί ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 6/12/07 Ένας ακέραιος μεγαλύτερος του 1 είναι πρώτος αν έχει ακριβώς δύο διαιρέτες (τη μονάδα και τον εαυτό του). Πρόβλημα: έλεγχος
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Υπάρχουσες κλάσεις και αντικείμενα στην Java Strings Wrapper Classes Δομές
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Υπάρχουσες κλάσεις και αντικείμενα στην Java Strings Wrapper Classes Δομές ΚΛΑΣΕΙΣ ΚΑΙ ΑΝΤΙΚΕΙΜΕΝΑ Κλάση Μια κλάση είναι μία αφηρημένη περιγραφή αντικειμένων
Διάλεξη 3: Προγραμματισμός σε JAVA I. Διδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 3: Προγραμματισμός σε JAVA I Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: - Στοιχειώδης Προγραμματισμός - Προγραμματισμός με Συνθήκες - Προγραμματισμός με Βρόγχους
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java Είσοδος Χρησιμοποιούμε την κλάση Scanner της Java import java.util.scanner; Αρχικοποιείται με το ρεύμα εισόδου: Scanner in = new Scanner(System.in);
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πίνακες Κλάσεις και Αντικείμενα
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πίνακες Κλάσεις και Αντικείμενα Μαθήματα από το πρώτο εργαστήριο Δημιουργία αντικειμένου Scanner Scanner input = new Scanner(System.in); Το αντικείμενο input
Εισαγωγή στον Αντικειμενοστρεφή Προγραμματισμό Διάλεξη #16
Week 9: Input / Output Μηχανισμοί εισόδου/εξόδου [I/O mechanisms] Όλα τα προγράμματα χρειάζονται είσοδο/έξοδο για να επικοινωνούν με το περιβάλλον τους. Διάλεξη #16: Είσοδος / Έξοδος [Input / Output] Η
I (JAVA) Ονοματεπώνυμο: Α. Μ.: Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην.
I (JAVA) Ονοματεπώνυμο: Α. Μ.: + ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην. + 1 ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ (σελ. 2/3) 2 ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ (σελ. 3/3)
ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός
ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός Παναγιώτης Σφέτσος sfetsos@it.teithe.gr Εντολές ελέγχου συγκρίσεων επιλογής ή διακλαδώσεων ( if switch) Μία από τις σημαντικότερες
ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008
ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008 Κατασκευαστές (Constructors) Ειδικός τύπος μεθόδων, οι οποίες: - είναι public και έχουν το ίδιο όνομα με αυτό της κλάσης - χρησιμοποιούνται για να αρχικοποιήσουν κάποιες
ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 18/3/2008
ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 18/3/2008 - Παράδειγμα με switch (το οποίο δείχνει επίσης πότε σε μια άσκηση χρησιμοποιούμε user-input και System.out.println() για έξοδο και πότε χρησιμοποιούμε είσοδο σε μέθοδο
Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η
Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η μέθοδος main(), εμφάνιση μηνυμάτων, Java προγράμματα που εκτελούν αριθμητικές πράξεις Γαβαλάς Δαμιανός
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java II
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java II HelloWorld.java class HelloWorld public static void main(string args[]) // print message System.out.println( Hello world! ); javac HelloWorld.java
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εξαιρέσεις Αρχεία String processing
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εξαιρέσεις Αρχεία String processing ΕΞΑΙΡΕΣΕΙΣ Εξαιρέσεις οι Εξαιρέσεις (Exceptions) είναι ένας μηχανισμός που έχει η Java για να αντιμετωπίζει περιπτώσεις
Εξαιρέσεις στην Java EXCEPTIONS IN JAVA
Εξαιρέσεις στην Java EXCEPTIONS IN JAVA Τι είναι μια εξαίρεση Έστω το κάτωθι τμήμα κώδικα: int age = Integer.parseInt(input); Προφανώς αναμένουμε έναν αριθμό (ακέραιο) από το χρήστη που αντιπροσωπεύει
Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 6 : ΠΙΝΑΚΕΣ
Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 6 : ΠΙΝΑΚΕΣ Κων. Κόκκινος ΠΙΝΑΚΕΣ (ARRAYS) Είναι χώροι της μνήμης για προσωρινή αποθήκευση δεδομένων του ίδιου τύπου. Οι πίνακες είναι δομές δεδομένων που τις
Αντικειμενοστρεφής Προγραμματισμός
ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΙΚΑ ΜΑΘΗΜΑΤΑ Αντικειμενοστρεφής Προγραμματισμός Ενότητα 12: Είσοδος από & Έξοδος σε Ρεύματα & Αρχεία Γρηγόρης Τσουμάκας, Επικ. Καθηγητής Άδειες Χρήσης
Εισαγωγή στον Προγ/μό Η/Υ
Εισαγωγή στον Προγ/μό Η/Υ Ενότητα 7 2ο μέρος: Επιπλέον έννοιες σχετικά με αντικείμενα Διδάσκων: Μιχάλης Τίτσιας Περιεχόμενα Τι μπορεί να περιέχει μια τάξη Μέθοδοι τάξης και σταθερές τάξης Πολυμορφισμός
Προγραµµατισµός ΙΙ. Ηγλώσσααντικειµενοστραφούς. ιδάσκων ηµήτριος Κατσαρός, Τµ. Μηχανικών Η/Υ, Τηλεπικοινωνιών & ικτύων Πανεπιστήµιο Θεσσαλίας
Προγραµµατισµός ΙΙ Ηγλώσσααντικειµενοστραφούς προγραµµατισµού Java ιδάσκων ηµήτριος Κατσαρός, Ph.D. @ Τµ. Μηχανικών Η/Υ, Τηλεπικοινωνιών & ικτύων Πανεπιστήµιο Θεσσαλίας ιάλεξη 6η: 06/04/2006 1 ιαχείριση
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java III
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java III Ισότητα Strings class StringTest public static void main(string args[]) String x1 = "java"; String y1 = "java"; System.out.println("1.
Αντικειµενοστρεφής Προγραµµατισµός
16 η διάλεξη Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 Προηγούµενη ιάλεξη
2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων
2 Βασικές Εντολές 2.1. Εντολές Οι στην Java ακολουθούν το πρότυπο της γλώσσας C. Έτσι, κάθε εντολή που γράφουμε στη Java θα πρέπει να τελειώνει με το ερωτηματικό (;). Όπως και η C έτσι και η Java επιτρέπει
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Δημιουργώντας δικές μας Κλάσεις και Αντικείμενα
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Δημιουργώντας δικές μας Κλάσεις και Αντικείμενα Μαθήματα από το πρώτο εργαστήριο Δημιουργία αντικειμένου Scanner Scanner input = new Scanner(System.in); Το
Εξαιρέσεις (στη Java)
Εξαιρέσεις (στη Java) Vincent van Gogh, Irises, 1889 Κωστής Σαγώνας Εξαιρέσεις στη Java public class Test { public static void main(string[] args) { int i = Integer.parseInt(args[0]);
14. Δικτύωση με Java Δικτύωση με Java Sockets Δημιουργία της σύνδεσης Διευθυνσιοδότηση της σύνδεσης
14. Δικτύωση με Java Τελειώνοντας αυτό το κεφάλαιο θα μπορείτε: Να δημιουργείτε έναν ελάχιστο εξυπηρέτη TCP/IP σε Java Να δημιουργείτε έναν ελάχιστο εξυπηρετούμενο TCP/IP σε Java Να κατανοείτε πώς υλοποιούνται
Χειρισμός Εξαιρέσεων EXCEPTIONS IN JAVA
Χειρισμός Εξαιρέσεων EXCEPTIONS IN JAVA Τι είναι μια εξαίρεση Έστω το κάτωθι τμήμα κώδικα: int age = Integer.parseInt(input); Προφανώς αναμένουμε έναν αριθμό (ακέραιο) από το χρήστη που αντιπροσωπεύει
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εξαιρέσεις
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εξαιρέσεις Εξαιρέσεις Στα προγράμματα μας θα πρέπει να μπορούμε να χειριστούμε περιπτώσεις που το πρόγραμμα δεν εξελίσσεται όπως το είχαμε προβλέψει Π.χ., κάνουμε
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java III
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java III Το if-else statement Το if-else statement δουλεύει καλά όταν στο condition θέλουμε να περιγράψουμε μια επιλογή με δύο πιθανά ενδεχόμενα.
Εξαιρέσεις. try, catch, finally, throw, throws
Εξαιρέσεις try, catch, finally, throw, throws Εξαιρέσεις Πολλές φορές όταν προγραµµατίζουµε σε κάποια γλώσσα προγραµµατισµού συµβαίνουν διάφορα σφάλµατα που οφείλονται είτε σε διάφορες αιτίες όπως σε λάθη
NATIONAL & KAPODISTRIAN UNIVERSITY OF ATHENS. Διαχείριση Δικτύων. Nikolas Bompetsis
Διαχείριση Δικτύων Nikolas Bompetsis nbompetsis@di.uoa.gr Εισαγωγική Διάλεξη Java Εισαγωγή στον αντικειμενοστραφή προγραμματισμό Τεχνολογία Java Collections & Generics Διαχείριση σφαλμάτων Ροές Δεδομένων
Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η
Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η μέθοδος main(), εμφάνιση μηνυμάτων, Java προγράμματα που εκτελούν αριθμητικές πράξεις 2 Ανατομία ενός προγράμματος
Εξαιρέσεις στη Java. Περιεχόμενα. Κάποιες προκαθορισμένες ρ εξαιρέσεις. Κωστής Σαγώνας
Εξαιρέσεις (στη Java) Vincent van Gogh, Irises, 1889 Κωστής Σαγώνας Εξαιρέσεις στη Java public class Test { public static void main(string[] args) { int i = Integer.parseInt(args[0]);
ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 29/11/07
Συνέχεια για το for: ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 29/11/07 Nested for-loops (for μέσα σε for): π.χ. int k; for (int i=0; i
HelloWorld. Παύλος Εφραιμίδης. Java Το πρόγραμμα HelloWorld 1
HelloWorld Παύλος Εφραιμίδης Java Το πρόγραμμα HelloWorld 1 Το πρόγραμμα HelloWorld.java Σχόλια στη Java /** * The HelloWorld class */ class HelloWorld { public static void main(string[] args) { System.out.println("Hello
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Στατικές μέθοδοι και μεταβλητές Εσωτερικές κλάσεις
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Στατικές μέθοδοι και μεταβλητές Εσωτερικές κλάσεις Στατικές μέθοδοι Τι σημαίνει το keyword static στον ορισμό της main μεθόδου? Τι είναι μια στατική μέθοδος?
Εισαγωγή στη γλώσσα προγραμματισμού JAVA. Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών
Εισαγωγή στη γλώσσα προγραμματισμού JAVA Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών Το πρώτο φλιτζάνι Java Λίστα με τα απαραίτητα Το πρώτο μου πρόγραμμα(hello World) Συνεχίζοντας
Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή
Στόχοι και αντικείμενο ενότητας Η έννοια του Τελεστή #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Εκφράσεις Προτεραιότητα Προσεταιριστικότητα Χρήση παρενθέσεων Μετατροπές Τύπων Υπονοούμενες και ρητές μετατροπές
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Μέθοδοι Παράδειγμα 1 Θέλουμε ένα πρόγραμμα που να προσομοιώνει την κίνηση ενός αυτοκινήτου, το οποίο κινείται και τυπώνει τη θέση του.
Στοιχεία εξεταζόµενου Αριθµός Απάντησης Βαθµολογία. Σύνολο (Θέµα 4 ο )
Οικονοµικό Πανεπιστήµιο Αθηνών Τµήµα Πληροφορικής Εισαγωγή στον Προγραµµατισµό των Υπολογιστών Καθηγητής Ι. Κάβουρας Εξεταστική περίοδος Φεβρουαρίου 2004 Τετάρτη 10/3/2004, ώρα 8.00 Στοιχεία εξεταζόµενου
Week 9: Input / Output
Week 9: Input / Output Μηχανισµοί εισόδου/εξόδου [I/O mechanisms] Όλα τα προγράµµατα χρειάζονται είσοδο/έξοδο για να επικοινωνούν µε το περιβάλλον τους. Εβδοµάδα 8: Είσοδος / Έξοδος [Input / Output] Η
Οντοκεντρικός Προγραμματισμός
Οντοκεντρικός Προγραμματισμός Ενότητα 3: JAVA: ΕΞΑΙΡΕΣΕΙΣ, ΕΙΣΟΔΟΣ-ΕΞΟΔΟΣ, ΝΗΜΑΤΑ Είσοδος - Έξοδος ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Μέθοδοι Παράδειγμα 1 Θέλουμε ένα πρόγραμμα που να προσομοιώνει την κίνηση ενός αυτοκινήτου, το οποίο κινείται πάνω σε μία ευθεία πάντα
Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 2 : ΜΕΤΑΒΛΗΤΕΣ ΤΕΛΕΣΤΕΣ & ΕΚΦΡΑΣΕΙΣ ΕΛΕΓΧΟΣ ΡΟΗΣ
Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 2 : ΜΕΤΑΒΛΗΤΕΣ ΤΕΛΕΣΤΕΣ & ΕΚΦΡΑΣΕΙΣ ΕΛΕΓΧΟΣ ΡΟΗΣ Κων. Κόκκινος Μεταβλητές-1 Οι μεταβλητές αποτελούν θέσεις μνήμης στις οποίες αποθηκεύονται τιμές αντίστοιχες
Βασικά της γλώσσας JAVA
17 η διάλεξη Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 Προηγούµενη ιάλεξη
2 ΓΡΑΜΜΙΚΕΣ ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ
2 ΓΡΑΜΜΙΚΕΣ ΔΟΜΕΣ ΔΕΔΟΜΕΝΩΝ (Linear Data Structures) Ας θεωρήσουµε µία δοµή δεδοµένων το σύνολο των στοιχείων της οποίας είναι διατεταγµένο µε τέτοιο τρόπο ώστε να ισχύουν τα εξής: (α) υπάρχει ένα µόνο
ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός. Παναγιώτης Σφέτσος
ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός Παναγιώτης Σφέτσος sfetsos@it.teithe.gr ΕΡΓΑΣΤΗΡΙΟ - 7 ΘΕΜΑΤΑ: Εντολές for, while και do..while Προσοχή!!! Να εκτελεστούν
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Μέθοδοι Παράδειγμα 1 Θέλουμε ένα πρόγραμμα που να προσομοιώνει την κίνηση ενός αυτοκινήτου, το οποίο κινείται πάνω σε μία ευθεία πάντα
Κλάσεις και Αντικείµενα
Κλάσεις και Αντικείµενα Γρηγόρης Τσουµάκας Τµήµα Πληροφορικής, Αριστοτέλειο Πανεπιστήµιο Θεσσαλονίκης Κλάσεις και Αντικείµενα 2 Τα αντικείµενα σε µια αντικειµενοστρεφή γλώσσα προγραµµατισµού, µοντελοποιούν
Αντικειμενοστραφής Προγραμματισμός
Αντικειμενοστραφής Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Ενότητα 7: Εξαιρέσεις (Exceptions), Εντοπισμός Σφαλμάτων (Debugging) Δρ. Χαράλαμπος Ζ. Πατρικάκης
ΑΝΑΚΕΦΑΛΑΙΩΣΗ. Τα βασικά για την γλώσσα Java
JAVA, NETBEANS ΑΝΑΚΕΦΑΛΑΙΩΣΗ Τα βασικά για την γλώσσα Java Java portability Το μεγαλύτερο πλεονέκτημα της Java είναι η μεταφερσιμότητα: ο κώδικας μπορεί να τρέξει πάνω σε οποιαδήποτε πλατφόρμα. Write-Once-Run-Anywhere
Είσοδος & Έξοδος. Γρηγόρης Τσουµάκας. Τµήµα Πληροφορικής, Αριστοτέλειο Πανεπιστήµιο Θεσσαλονίκης. Έκδοση:
Είσοδος & Έξοδος Γρηγόρης Τσουµάκας Τµήµα Πληροφορικής, Αριστοτέλειο Πανεπιστήµιο Θεσσαλονίκης Έκδοση: 2010.12.09 Ρεύµατα (Streams) 2 Ένας ορισµός του ρεύµατος Αφαιρετική έννοια για κάτι το οποίο παράγει
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java II
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java II HelloWorld.java class HelloWorld public static void main(string args[]) // print message System.out.println( Hello world! ); javac HelloWorld.java
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java HelloWorld.java class HelloWorld public static void main(string args[]) // print message System.out.println( Hello world! ); javac HelloWorld.java
ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 18/10/07
ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 18/10/07 Αλγόριθμος: Βήμα προς βήμα διαδικασία για την επίλυση κάποιου προβλήματος. Το πλήθος των βημάτων πρέπει να είναι πεπερασμένο. Αλλιώς: Πεπερασμένη
Βασίλης Χριστοφίδης Επαναληπτική Εξέταση (3 ώρες) Ηµεροµηνία: 21 Σεπτεµβρίου 2012
Πανεπιστήµιο Κρήτης Τµήµα Επιστήµης Υπολογιστών ΗΥ-252 Αντικειµενοστρεφής Προγραµµατισµός Βασίλης Χριστοφίδης Επαναληπτική Εξέταση (3 ώρες) Ηµεροµηνία: 21 Σεπτεµβρίου 2012 Θέμα 1 Θέμα 2 Θέμα 3 Θέμα 4 Θέμα
Αντικειμενοστρεφής Προγραμματισμός
Αντικειμενοστρεφής Προγραμματισμός Διδάσκουσα: Αναπλ. Καθηγήτρια Ανδριάνα Πρέντζα aprentza@unipi.gr Εργαστηριακός Συνεργάτης: Δρ. Βασιλική Κούφη vassok@unipi.gr Εργαστήριο 2 Βασικοί Τύποι Μεταβλητών Java
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java Βρόγχοι Το if-then Statement Στην Java το if-then statement έχει το εξής συντακτικό Η παρένθεση είναι απαραίτητη if (condition) if-code block
Προγραµµατισµός ΙΙ Java 2
Προγραµµατισµός ΙΙ Java 2 ιαχείριση Αρχείων Αρχεία Γιατί χρειαζόµαστε να γνωρίζουµε πως διαχειριζόµαστε αρχεία? Για να αποθηκεύουµε και να διαβάζουµε δεδοµένα από το δίσκο (τους λογικούς δίσκους πιο σωστά)
ιαδικτυακές Εφαρµογές
ιαδικτυακές Εφαρµογές µε Java2 Στοιχεία ικτυακής Επικοινωνίας Όροι IP address 32bit αριθµός που χρησιµοποιείται από το Internet Protocol για την παράδοση δεδοµένων στο σωστό υπολογιστή στο δίκτυο. Port
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πίνακες Κλάσεις και Αντικείμενα
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πίνακες Κλάσεις και Αντικείμενα Μαθήματα από το πρώτο εργαστήριο Έλεγχος ισότητας για Strings: Διαβάζουμε το String option και θέλουμε ένα loop να συνεχίσει
Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr
Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εργαστήριο 1 Εισαγωγή στη C Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Διαδικαστικά Ιστοσελίδα μαθήματος: http://eclass.uoa.gr/courses/f30/ Υποχρεωτική παρακολούθηση: Παρασκευή 14:00 16:00 στην
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Δημιουργία Κλάσεων και Αντικειμένων
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Δημιουργία Κλάσεων και Αντικειμένων Κλάση Μια κλάση είναι μία αφηρημένη περιγραφή αντικειμένων με κοινά χαρακτηριστικά και κοινή συμπεριφορά. Ένα καλούπι/πρότυπο
Εισαγωγή στον αντικειμενοστραφή προγραμματισμό με τη Java
Προχωρημένος Προγραμματισμός Εισαγωγή στον αντικειμενοστραφή προγραμματισμό με τη Java ΕΛΕΥΘΕΡΙΟΣ ΚΟΣΜΑΣ ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2018-2019 ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ Τ.Ε. 1 Περίληψη Σήμερα... θα παρουσιάσουμε
ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 2: Βασικές εντολές
ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 2: Βασικές εντολές Μιχάλης Δρακόπουλος Σχολή Θετικών επιστημών Τμήμα Μαθηματικών ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (Java) Ενότητα 2 Είσοδος από το πληκτρολόγιο: 1) Προσθήκη απαραίτητης βιβλιοθήκης
Τ.Ε.Ι. Μεσολογγίου, Τµήµα τηλεπικοινωνιακών Συστημάτων & Δικτύων
Εργαστήριο Java Αντικείμενο: Αρχεία Πακέτο java.io Πακέτο java.io.zip Στην Java δεν υπάρχει η έννοια των εγγραφών μέσα σε ένα αρχείο. Ο προγραμματιστής πρέπει να κατασκευάσει το αρχείο κατάλληλα έτσι ώστε
Διάλεξη 15: Αναδρομή (Recursion) Διδάσκων: Παναγιώτης Ανδρέου
Διάλεξη 15: Αναδρομή (Recursion) Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Η έννοια της αναδρομής Μη αναδρομικός / Αναδρομικός Ορισμός Συναρτήσεων Παραδείγματα Ανάδρομης Αφαίρεση της Αναδρομής
Java Μέρος Ι Αντικειμενοστρεφής Προγραμματισμός - 7
Περιεχόμενα 1 Εισαγωγικές Έννοιες...12 1.1 Το Αντικείμενο στην καθημερινότητα...12 1.2 Το Αντικείμενο στον Προγραμματισμό...12 1.3 Επικοινωνία αντικειμένων...13 1.4 Κλάση (class) αντικειμένων...14 1.4.1
Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #4 ο : Αποσφαλμάτωση (debugging), μετατροπές
Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #4 ο : Αποσφαλμάτωση (debugging), μετατροπές τύπων, δημιουργία τυχαίων αριθμών, λήψη εισόδου από χρήστη Γαβαλάς Δαμιανός dgavalas@aegean.gr Λογικά
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Αναφορές
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Αναφορές Μαθήματα από το lab Υπενθύμιση: Η άσκηση ζητούσε να υλοποιήσετε μία κλάση vector που να διαχειρίζεται διανύσματα οποιουδήποτε
Ορισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα
ΝΗΜΑΤΑ ΣΤΗ JAVA (1) Ορισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα πρόγραµµα. Αιτία Η δυνατότητα αποµόνωσης (ή αυτονόµησης) κάποιων