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

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

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

Transcript

1 Αντικειμενοστραφής Προγραμματισμός ΙΙ Java Τμήμα Τεχνολογίας Πληροφορικής και Τηλεπικοινωνιών Σχολή Τεχνολογικών Εφαρμογών ΤΕΙ Λάρισας Δρ. Νικόλαος Θ. Λιόλιος Αν. Καθηγητής

2 Java Μια αντικειμενοστραφής γλώσσα προγραμματισμού

3 Σύντομο Ιστορικό Η Java είναι δηµιούργηµα τηςsun MICROSYSTEMS. Πρωτοαναπτύχθηκε από τον James Gosling το 1990, για να χρησιµοποιηθεί σε έξυπνες συσκευές. Το αρχικό της όνοµα ήτανoak (βελανιδιά). Οι ιδιότητες της γλώσσας σύντοµα την έκαναν κατάλληλη για χρήση στο World Wide Web, ενώ το όνοµά της έγινε Java.

4 Εξοικείωση με το περιβάλλον Για να την χρησιμοποιήσουμε θα πρέπει να έχουμε εγκαταστήσει στον υπολογιστή μας την τρέχουσα έκδοση της Java Virtual Machine μαζί με το αντίστοιχο Java Development kit από το site της Sun

5 Ανεξαρτησία από μηχανή Όταν το World Wide Web εµφανίστηκε στο διαδίκτυο το 1993, παρουσιάστηκε η ανάγκη µιας γλώσσας η οποία να είναι platform independent (ανεξάρτητη πλατφόρµας). Η Java έχει δηµιουργηθεί να λειτουργεί σε πολλαπλά συστήµατα. Ο μεταγλωττιστής της Java δεν παράγει εκτελέσιμο κώδικα αλλά παράγει μία μορφή αρχείων γνωστή ως Java Bytecodes που δεν είναι εκτελέσιμη απευθείας από έναν υπολογιστή, αλλά εκτελείται από την εικονική μηχανή Java (Java Virtual Machine JVM).

6 H Εικονική Μηχανή της Java (The Java Virtual Machine - JVM)

7 Γιατί λοιπόν Java; Με την Java, ένα πρόγραμμα πλοήγησης του Web θα μπορούσε να έχει πάρα πολλές δυνατότητες. Οι προγραμματιστές θα μπορούσαν να γράψουν τις εφαρμογές τους (applets) μιαφοράκαιαυτέςμετάθα έτρεχαν σε οποιαδήποτε μηχανή, οπουδήποτε. Οι επισκέπτες σε σελίδες με δυνατότητες Java, θα μπορούσαν να χρησιμοποιήσουν το περιεχόμενο αυτών των σελίδων ανεξάρτητα του τύπου υπολογιστή ήτου προγράμματος πλοήγησης. Με τα applets σαν αρχικό σημείο εστίασης, η Java επέδειξε ένα νέο τρόπο για την διάθεση λογισμικού μέσω του Internet.

8 Λόγοι για να χρησιμοποιήσουμε τη Java Είναι σχεδιασμένη για το Internet. Προσφέρει εκτέλεση σε όλους τους υπολογιστές. Είναι μια πλούσια γλώσσα προγραμματισμού. Προσφέρει την ευελιξία της δυναμικής σύνδεσης.!

9 Μειονεκτήματα της Java Τα προγράμματα πλοήγησης ενδέχεται να μην μπορούν να εκτελέσουν το Applet μας. Αυτό διότι τα προγράμματα πλοήγησης ενδέχεται να μην είναι εφοδιασμένα με την τρέχουσα έκδοση της Java. Ο κώδικας που είναι μεταγλωττισμένος για μια συγκεκριμένη μηχανή είναι ταχύτερος από τον κώδικα που εκτελείται από ένα μεταφραστή (interpreter). Πάντως αξίζει να σημειωθεί ότι μία τεχνική που ονομάζεται Just-In Time μεταγλώττιση (JIT compilation) έχει βελτιώσει σημαντικά τους χρόνους εκτέλεσης των Java προγραμμάτων. Tα προγράμματα της Java δεν έχουν ικανοποιητική ταχύτητα εκτέλεσης σε σύγκριση με τον μεταγλωττισμένο κώδικα της C ή C++ ή C#

10 Το πρώτο απλό πρόγραµµα σεjava

11 Το πρώτο απλό πρόγραµµα σεjava Εκτέλεση του προγράµµατος:

12 Mεταβλητές (variables) και Σταθερές (constants) Οι μεταβλητές είναι οι θέσεις μνήμης στις οποίες ένα πρόγραμμα τοποθετεί τα δεδομένα του κατά τη διάρκεια της λειτουργίας του. θα μάθουμε: πως δηλώνουμε μεταβλητές ποιοι είναι οι τύποι των μεταβλητών πως πρέπει να είναι το όνομα μιας μεταβλητής ποια είναι η εμβέλεια της μεταβλητής.

13 Mεταβλητές (variables) και Σταθερές (constants) Η µεταβλητή είναι µια οντότητα η οποία µπορεί να παίρνει διαφορετικές τιµές. Επίσης δύναται να αλλάζει τιµές στη ροή του προγράµµατος. Για παράδειγµα, σκεφτείτε τις παρακάτω τέσσερις γραµµές: double a=1.35; int b=32; a = 7.5; b = 10; Η σταθερά είναι µια οντότητα της οποίας η τιµή δεν αλλάζει ποτέ. Κάθε σταθερά ορίζεται µία φορά στο πρόγραµµα. Οι σταθερές γράφονται συνήθως µε κεφαλαία γράµµατα. final int DAY=7; final double GRAVITY=9.81;

14 Παραστάσεις και εντολές Μία παράσταση είναι ένας συνδυασµός σταθερών, µεταβλητών, τελεστών ή και συναρτήσεων. Οι παραστάσεις χρησιµοποιούνται για να δηλώσουν υπολογισµούς. Για παράδειγµα, σκεφτείτε τις παρακάτω γραµµές: int a = 10; int b = 5; int c = (a+5)*b; Οόρος(a+5)*b αποτελεί µια παράσταση. Η µεταβλητή c λαµβάνει την τιµή 75. Μία εντολή είναι µια οδηγία η οποία τελειώνει µε ένα ερωτηµατικό. Στο προηγούµενο παράδειγµα ηγραµµή c = (a+5)*b; αποτελεί µια εντολή. Η τιµή 75 η οποία υπολογίζεται από την παράσταση (a+5)*b προσδίδεται στην µεταβλητή c.

15 Παραστάσεις και εντολές Παράδειγμα publicj class Variables { public static void main(string[] args) { int a=0; double b=0; System.out.println("a = " + a); System.out.println("b = " + b); a = 5; b = a ; } } System.out.println("a = " + a); System.out.println("b = " + b);

16 Ονόματα μεταβλητών Ένα πρόγραμμα Java αναφέρεται σε μία μεταβλητή με το όνομά της. Ένα όνομα μιας μεταβλητής θα πρέπει να ικανοποιεί τους ακόλουθους περιορισμούς: Πρέπει να είναι ένα έγκυρο αναγνωριστικό της Java αποτελούμενο από μία σειρά Unicode χαρακτήρων. Δεν πρέπει να είναι δεσμευμένη λέξη της Java (keyword) Δεν πρέπει να υπάρχει άλλο ίδιο όνομα μεταβλητής στην περιοχή εμβέλειας της μεταβλητής.

17 Στη Java συνηθίζονται τα ακόλουθα: Τα ονόματα των τάξεων ξεκινάνε με κεφαλαία γράμματα Τα ονόματα των μεταβλητών ξεκινάνε με πεζά γράμματα Στη περίπτωση που έχουμε αναγνωριστικόπολλώνλέξεωντότε ενώνουμε τις λέξεις γράφοντας με κεφαλαίο το πρώτο γράμμα κάθε λέξης: π.χ. averylongidentifier

18 Οι βασικοί τύποι δεδοµένων στη Java

19 Οι βασικοί τύποι δεδομένων στη Java Τύπος Μεγεθος σε bit Τιµές byte έως 127 short έως int έως long έως float 32 ± x10-45 έως ± x10 38 double 64 ± x έως ± x char 16 Όλοι οι Unicode χαρακτήρες boolean false ή true

20 Παράδειγµα στους τύπους δεδοµένων Γράψτε ένα πρόγραµµα στο οποίο να δηλώσετε 8 µεταβλητές σύµφωνα µε τουςοκτώβασικούςτύπουςδεδοµένων που συναντάµε στην Java. ώστε τιµές σε αυτές τις µεταβλητές και στη συνέχεια τυπώστε τις.

21 Παράδειγµα στους τύπους δεδοµένων Η εκτέλεση του προγράµµατος είναι η ακόλουθη:

22 Τελεστές (operators) Οι τελεστές είναι σύμβολα τα οποία συμβολίζουν την τέλεση μιας λειτουργίας σε ένα, δύο ή και τρεις τελεστέους (operators). Υπάρχουν τρία είδη τελεστών ως προς τον αριθμό των τελεστέων στους οποίους επενεργούν: Μοναδιαίοι (unary) Τελεστές: Αυτοί επενεργούν σε ένα και μόνο τελεστέο. Για παράδειγμα ο τελεστής ++ αυξάνει κατά 1 τον τελεστέο του όπως στην έκφραση ++count. Δυαδικοί (binary) Τελεστές: Αυτοί επενεργούν σε δύο τελεστέους. Γιαπαράδειγμαοτελεστής+ της αριθμητικής πρόσθεσης απαιτεί δύο τελεστέους όπως στην έκφραση op1 + op2. Τριαδικοί (ternary) Τελεστές: Αυτοί επενεργούν σε τρεις τελεστέους. Η Java έχει μόνο ένα τέτοιο τελεστή την έκφραση if που είναι ο :?, όπως στην ακόλουθη έκφραση a>4?a-4:a=4

23 Οι βασικοί Τελεστές στη Java αριθµητικοί τελεστές Τελεστής Περιγραφή + Πρόσθεση - Αφαίρεση * Πολλαπλασιασµός / ιαίρεση % Υπόλοιπο

24 Οι βασικοί Τελεστές στη Java συσχετιστικοί τελεστές (relational) Τελεστής Περιγραφή > Μεγαλύτερο >= Μεγαλύτερο ή ίσο < Μικρότερο <= Μικρότερο ή ίσο == ίσο µε!= Δεν είναι ίσο µε

25 Οι βασικοί Τελεστές στη Java Λογικοί τελεστές Τελεστής Χρήση Περιγραφή && e1 && e2 true αν και η e1 και η e2 είναι true. H e2 δεν αποτιμάται αν η e1 είναι false. e1 e2 false αν και η e1 και η e2 είναι false. Η e2 δεν αποτιμάται αν η e1 είναι true!!e H λογική άρνηση της έκφρασης e Όπου e1, e2 και e είναι εκφράσεις τύπου boolean

26 Οι βασικοί Τελεστές στη Java Τους συσχετιστικούς τελεστές, τους τελεστές ισότητας και τους λογικούς τελεστές τους συναντάµε κυρίως στις εντολές if, for, while, do. Οι παραπάνω τελεστές χρησιµοποιούνται για συγκρίσεις µεταξύ αριθµών, µεταβλητών και παραστάσεων. Εάν η σύγκριση είναι αληθής τότε το αποτέλεσµα είναι true διαφορετικά εάν είναι ψευδής τότε το αποτέλεσµα είναιfalse.

27 Οι βασικοί Τελεστές στη Java Τελεστές πράξεων με bit Τελεστής Χρήση Περιγραφή >> n1 >> n2 Κάνει ολίσθηση n2 bits δεξιά στο n1 << n1 << n2 Κάνει ολίσθηση n2 bits αριστερά στο n1 >>> n1 >>> n2 Το ίδιο με τον >> αλλά χωρίς το πρόσημο & n1 & n2 Δυαδικό ΚΑΙ των n1 και n2 n1 n2 Δυαδικό Ή των n1 και n2 ^ n1 ^ n2 Αποκλειστικό Η (XOR) των n1 και n2 ~ ~n Δυαδικό συμπλήρωμα ως προς ένα του n

28 Οι βασικοί Τελεστές στη Java Τελεστές πράξεων με bit Οι παραπάνω τελεστές αφορούν πράξεις σε επίπεδο bits. Οι τελεστές &,, ^ και ~ αντιστοιχούν στις απλές πράξεις της άλγεβρας Boole. Οι τελεστές >> και << προκαλούν ολίσθηση στα δεξιά και στα αριστερά αντίστοιχα. Έτσι για παράδειγµα εάνηµεταβλητή a είναι ο δυαδικός αριθµός τότε η παράσταση: b = a >> 2; δίνει στη µεταβλητή b την τιµή

29 Οι βασικοί Τελεστές στη Java O τελεστής αύξησης και ο τελεστής µείωσης Τελεστής Χρήση Περιγραφή ++ a++ ή ++a Τελεστής αύξησης κατά 1 -- a - ή --a Τελεστής µείωσης κατά 1 Οι τελεστές ++ και -- χρησιµοποιούνται όταν θέλουµε να προσθέσουµε ήνααφαιρέσουµε το1 από µία µεταβλητή. Έτσι το ++a; ισοδυναµεί µε τοa=a+1; ενώ το --a; ισοδυναµεί στο a=a-1; Oι τελεστές ++ και -- µπορούν να χρησιµοποιηθούν είτε ως προθεµατικοί τελεστές (δηλ. πριν την µεταβλητή, όπως ++a ή--a) είτε ως µεταθεµατικοί (δηλ. µετά την µεταβλητή, όπως a++ ή a--).

30 Οι βασικοί Τελεστές στη Java O τελεστής αύξησης και ο τελεστής µείωσης Στην παράσταση ++a η τιµή τουa αυξάνει πριν χρησιµοποιηθεί η τιµή του. Στην παράσταση a++ η τιµή τουa αυξάνει αφού χρησιµοποιηθεί η τιµή του. Παράδειγµα: Έτσι έστω ότι τo a ισούται µε 5 a = 5; τότε η παράσταση b = a++; δίνει στο b την τιµή 5 ενώ η παράσταση b=++a; την τιµή 6. Το a και στις δύο περιπτώσεις γίνεται 6.

31 Οι βασικοί Τελεστές στη Java Τελεστής καταχώρισης τιμής Τελεστής Περιγραφή = Τελεστής καταχώρησης τιμής Ο τελεστής καταχώρισης τιμής σε μεταβλητή είναι ο =. Ο = αποδίδει την τιμή της έκφρασης στα δεξιά του στη μεταβλητή που βρίσκεται στα αριστερά του, όπως στην εντολή: x = y+10; όπου θα υπολογιστεί η έκφραση y+10 και στη συνέχειαθακαταχωρηθείητιμήαυτήστη μεταβλητή x.

32 Οι βασικοί Τελεστές στη Java Άλλοι τελεστής καταχώρισης τιμής Τελεστής Περιγραφή += Τελεστής πρόσθεσης και αντιστοίχησης -= Τελεστής αφαίρεσης και αντιστοίχησης *= Τελεστής πολ/µου και αντιστοίχησης /= Τελεστής διαίρεσης και αντιστοίχησης %= Τελεστής υπολοίπου και αντιστοίχησης Το a += b; ισοδυναμεί με το a = a+b; Το a -= b; ισοδυναμεί με το a = a-b; Το a *= b; ισοδυναμεί µε το a = a*b; Το a /= b; ισοδυναμεί µε το a = a/b; Το a %= b; ισοδυναμεί µε το a = a %b;

33 Οι βασικοί Τελεστές στη Java Άλλοι τελεστής καταχώρισης τιμής Τελεστής Περιγραφή += Τελεστής πρόσθεσης και αντιστοίχησης -= Τελεστής αφαίρεσης και αντιστοίχησης *= Τελεστής πολ/µου και αντιστοίχησης /= Τελεστής διαίρεσης και αντιστοίχησης %= Τελεστής υπολοίπου και αντιστοίχησης Το a += b; ισοδυναμεί με το a = a+b; Το a -= b; ισοδυναμεί με το a = a-b; Το a *= b; ισοδυναμεί µε το a = a*b; Το a /= b; ισοδυναμεί µε το a = a/b; Το a %= b; ισοδυναμεί µε το a = a %b;

34 Οι βασικοί Τελεστές στη Java Άλλοι τελεστές απόδοσης τιμής Αντίστοιχη σημασία έχουν και οι τελεστές: &= = ^= <<= >>= >>>= που είναι τελεστές πράξεων με bits και ταυτόχρονη ανάθεση τιμής

35 Συµβολοσειρές (Strings) Χαρακτήρες char c= A ; Οι συµβολοσειρές είναι ακολουθίες χαρακτήρων String teil= T.E.I. of Larisa ; Μια συµβολοσειρά στην Java είναι ένα αντικείµενο της τάξης String. Εµφάνιση συµβολοσειρών. Μέθοδος println() µε αλλαγή γραµµής στην εκτύπωση System.out.println(teil); System.out.println( T.E.I. of Larisa ); //Αλλαγή γραµµής στη εκτύπωση

36 Συµβολοσειρές (Strings) Εµφάνιση συµβολοσειρών. Μέθοδος print() χωρίς αλλαγή γραµµής στην εκτύπωση System.out.print("T.E.I."); System.out.print(" of "); System.out.println("Larisa"); Συνένωση συµβολοσειρών String teil = teil + cs Department ; Ησυµβολοσειρά teil περιέχει το Τ.Ε.Ι. Of Larisa cs Department

37 Συµβολοσειρές (Strings) Έστω οι συµβολοσειρές s1 και s2. Μέθοδος s1.length() s2=s1.touppercase() s2=s1.tolowercase() s2.equals(s1) int a=s2.indexof(s1); Ενέργεια Προσδιορισµός µήκους συµβολοσειράς s1 Μετατροπή συµβολοσειράς s1 σε κεφαλαία Μετατροπή συµβολοσειράς s1 σε πεζά Σύγκριση συµβολοσειρών s1 και s2 Αναζήτηση συµβολοσειράς s2 στην s1 a η θέσητηςs2 στην s1

38 Παράδειγµα στιςσυµβολοσειρές Γράψτε ένα πρόγραµµα στο οποίο να ορίσετε µία συµβολοσειρά και να αποθηκεύσετε σε αυτή την φράση T.E.I. of Larisa. Τυπώστε την συµβολοσειρά και τον αριθµό των χαρακτήρων που περιέχει. Κατασκευάστε µια νέα συµβολοσειρά που να περιέχει την προηγούµενη και επιπλέον την φράση cs Department. Τυπώστε την νέα συµβολοσειρά και τον αριθµό τωνχαρακτήρωνπουπεριέχει. ηµιουργήστε από τις παραπάνω συµβολοσειρές δύο νέες οι οποίες να περιέχουν τις ίδιες φράσεις στα κεφαλαία. Τυπώστε όλες τις συμβολοσειρές

39 Δομές ελέγχου ροής προγράμματος Υπάρχουν δύο είδη δομών ελέγχου ροής (control flow): Οι δομές επιλογής και Οι δομές επανάληψης

40 Δομές ελέγχου ροής προγράμματος Είδος δομής Δομές επιλογής Δομή ελέγχου ροής if-else switch-case for Δομές επανάληψης while do-while

41 Ηδομήεπιλογήςif-else Η εντολή if μας βοηθάει στον έλεγχο μίας λογικής έκφρασης (της συνθήκης) και αν είναι αληθής εκτελούνται μία ή περισσότερες εντολές ενώ αν είναι ψευδής δεν εκτελούνται. Αν οι εντολές είναι περισσότερες από μία τότε θα πρέπει οι εντολές να περικλειστούν ανάμεσα από άγκιστρα (τα οποία ομαδοποιούν εντολές). Το συντακτικό της εντολής if είναι το ακόλουθο: if (συνθήκη) εντολή ή ομάδα-εντολών π.χ. if (x!= 0) { System.out.println("To x δεν είναι 0"); y=1/x; }

42 Ηδομήεπιλογήςif-else Ηεντολήif έχει επίσης και τη φράση else με την οποία επιτρέπεται η εκτέλεση μίας ομάδας εντολών εναλλακτικά αν δεν ισχύει η συνθήκη. Φυσικά μπορούμε να έχουμε και εμφωλευμένα if δηλαδή if μέσα σε άλλα if όσες φορές θέλουμε. if (συνθήκη) ομάδα-εντολών-1 else ομάδα-εντολών-2 π.χ. if (x!=0) { System.out.println("Το x δεν είναι 0"); y=1/x; } else { System.out.println("Το x είναι 0"); y=0; }

43 Παράδειγμα επιλογής if-else class IfExample { public static void main(string args[]) { int x=1, y; if (x!= 0) { System.out.println("Το x δεν είναι 0"); y=1/x; } else { System.out.println("Το x είναι 0"); y=0; } } }

44 Ηδομήεπανάληψηςfor Ηεντολήfor είναι χρήσιμη για την επανάληψη μιας σειράς εντολών όταν είναι γνωστό εκ των προτέρων πόσες φορές θέλουμε να επαναληφθούν. Η γενική μορφή της for είναι η ακόλουθη: for (αρχικοποίηση; τερματισμός; αύξηση) εντολή ή { ομάδα εντολών };

45 Παράδειγμα επανάληψης for Για παράδειγμα το ακόλουθο τμήμα κώδικα εμφανίζει στην οθόνη τους αριθμούς από το 1 μέχρι το 10:... for (int i=1; i<=10; i++) System.out.println(i);...

46 Ηδομήεπανάληψηςwhile Ηεντολήfor που είδαμε προηγουμένως είναι κατάλληλη όταν γνωρίζουμε πόσες επαναλήψεις θα γίνουν. Αν δεν γνωρίζουμε πόσες επαναλήψεις θα γίνουν μία καλύτερη εντολή είναι η while.

47 Η δομή επανάληψης while H while έχει την ακόλουθη γενική μορφή: while (συνθήκη) εντολές; Η εντολή ή εντολές που ακολουθούν το while θα εκτελεστούν όσο η συνθήκη είναι αληθής. Ο βρόχος δηλαδή θα τερματιστεί όταν η συνθήκη - που είναι μία boolean έκφραση - γίνει ψευδής

48 Παράδειγμα επανάληψης while boolean found = false; int i=0, x=5; while (!found && i!=10) if (i == x) found = true; else i = i+1; System.out.println( Βρέθηκε μετά από + i + βήματα );

49 Η δομή επανάληψης do-while Υπάρχουν κάποιες περιπτώσεις στις οποίες θα θέλαμε οι εντολές μέσα στο βρόχο να εκτελεστούν τουλάχιστον μία φορά και στη συνέχεια να ελεγχθεί η συνθήκη εξόδου. Σ αυτές τις περιπτώσεις προτιμάται η χρήση της dowhile αντί της while.

50 Η δομή επανάληψης do-while Η do-while έχει την ακόλουθη γενική μορφή: do εντολές; while (συνθήκη); Στην do-while πρώτα εκτελούνται οι εντολές και στη συνέχεια ελέγχεται η συνθήκη. Ο βρόχος τερματίζεται αν η συνθήκη βρεθεί ψευδής.

51 Παράδειγμα επανάληψης do-while... int c; Reader in;... do { c = in.read();... } while (c!= 1);...

52 Η δομή επιλογής switch-case Όταν οι εναλλακτικές περιπτώσεις που πρέπει να ελέγξουμε με την if είναι πάρα πολλές και αφορούν τον έλεγχο για ισότητα της τιμής μιας μεταβλητής ή μιας έκφρασης με κάποιες τιμές προτιμάται η switch-case η οποία έχει την ακόλουθη γενική μορφή: switch (έκφραση) { case τιμή-1: εντολές-1; [break;] case τιμή-ν: εντολές-ν; [break;] [default: εντολές; [break;]] }

53 Παράδειγμα επιλογής switch-case... switch (month) { case 1: case 3: case 5: case 7: case 8: case 10: case 12: numdays = 31; break; case 4: case 6: case 9: case 11: numdays = 30; break; case 2: if ( ((year % 4 == 0) &&!(year % 100 == 0)) (year % 400 == 0) ) numdays = 29; else numdays = 28; }... break;

54 Εντολές διακλάδωσης Η Java έχει τρεις εντολές διακλάδωσης οι οποίες είναι βολικές σε αρκετές περιπτώσεις και ιδιαίτερα με τις επαναληπτικές δομές που έχουμε συζητήσει. Οι εντολές διακλάδωσης είναι οι: break, continue και return

55 Παράδειγμα Εντολής διακλάδωσης int i,k=7; boolean found = false; for (i=0; i<10; i++) if (k == i) { found = true; break; } System.out.println( Έγιναν + i + επαναλήψεις );

56 Ηχρήσητηςcontinue Η χρήση της continue μέσα σε ένα βρόχο προκαλεί την άμεση αποτίμηση και πάλι της συνθήκης εξόδου. Για να γίνει αυτό στις εντολές for και while ο έλεγχος μεταφέρεται στη πρώτη γραμμή του βρόγχου ενώ στο dowhile στη τελευταία. Στη συνέχεια αποτιμάται και πάλι η συνθήκη τερματισμού και η επαναληπτική διαδικασία τερματίζεται ή συνεχίζεται ανάλογα με την τιμή της συνθήκης (true ή false) ως συνήθως.

57 Οι εντολές break και continue Οι εντολές break και continue έχουν και μία μορφή για ετικέτες (labeled break και labeled continue) που δεν θα συζητήσουμε εδώ μια και στη πράξη οι ετικέτες δεν χρησιμοποιούνται αφού οι υπόλοιπες δομές που είδαμε αρκούν για όλες τις πιθανές χρήσεις, χωρίς να εμφανίζουν πολλά από τα προβλήματα που πιθανώς να εμφανιστούν με την χρήση των ετικετών. Η συζήτηση για την εντολή return αναβάλλεται μέχρι να συζητήσουμε για τις μεθόδους των τάξεων σε επόμενα μαθήματα.

58 Πίνακες Οι πίνακες, όπως και στις άλλες γλώσσες προγραμματισμού, είναι δομές δεδομένων για την συλλογή και διαχείριση δεδομένων του ιδίου τύπου. Η διαφορά με τις περισσότερες από τις άλλες γλώσσες είναι ότι οι πίνακες στη Java είναι αντικείμενα και έχουν και ιδιότητες όπως η length που μας δείχνει ποιο είναι το μέγεθος ενός πίνακα.

59 Δήλωση και δημιουργία πινάκων Η δήλωση ενός πίνακα γίνεται ως εξής: τύπος[] όνομα; ή τύπος όνομα[]; όπως για παράδειγμα στην ακόλουθη δήλωση: int[] arrayofints; ή int arrayofints[]; που δηλώνει ένα πίνακα ακεραίων με το όνομα arrayofints.

60 Δήλωση και δημιουργία πινάκων Η δήλωση του πίνακα δεν αρκεί για τη χρησιμοποίησή του. Γι αυτό θα πρέπει να δεσμευτεί ο χώρος μνήμης που απαιτείται για τον πίνακα. Αυτό γίνεται ως εξής: τύπος όνομα[] = new τύπος[μέγεθος]; όπως για παράδειγμα στην ακόλουθη δήλωση: int arrayofints[] = new int[10]; που δημιουργεί ένα πίνακα 10 ακεραίων με το όνομα arrayofints.

61 Δήλωση και δημιουργία πινάκων Η δημιουργία του πίνακα δεν είναι απαραίτητο να γίνει ταυτόχρονα με την δήλωσή του μπορεί να γίνει και αργότερα, όπως δείχνει το ακόλουθο τμήμα κώδικα: int arrayofints[];... arrayofints = new int[10];... Σε κάθε περίπτωση πάντως δεν επιτρέπεται η αναφορά σε στοιχεία του πίνακα πριν να δημιουργηθεί ο πίνακας με την εντολή new.

62 Δήλωση και δημιουργία πινάκων Η αποθήκευση στοιχείων στον πίνακα μπορεί να γίνει ταυτόχρονα με την δήλωσή του, όπως δείχνει το ακόλουθο τμήμα κώδικα: double arrayofnumbers[] = {3.1, 2.219, 3.55, 6.1};

63 Παράδειγμα Χρήσης πινάκων Το ακόλουθο τμήμα κώδικα δημιουργεί ένα πίνακα 10 ακεραίων και στη συνέχεια τοποθετεί μέσα σ αυτόν τους ακεραίους από το 0 μέχρι το int arrayofints[] = new int[10]; for (int i=0; i<10; i++) arrayofints[i] = i;...

64 Παράδειγμα Χρήσης πινάκων Το ακόλουθο τμήμα κώδικα εμφανίζει τα στοιχεία που βρίσκονται στο πίνακα arrayofints. Παρατηρείστε τη χρήση της ιδιότητας length για να αναφερθούμε στο μήκος του πίνακα:... for (int i=0; i<arrayofints.length; i++) System.out.println(arrayOfInts[i]);...

65 Πίνακες περισσοτέρων διαστάσεων Στη Java μπορείτε να έχετε πίνακες δύο, τριών, τεσσάρων κλπ διαστάσεων. Στη πράξη όμως σπάνια συναντούμε περιπτώσεις στις οποίες η χρήση πινάκων που έχουν περισσότερες από τρις διαστάσεις.

66 Παράδειγμα χρήσης Πίνακα δύο διαστάσεων class Array2 { public static void main(string[] args) { int marks[][] = new int[3][10]; for (int i=0; i<marks.length; i++) { for (int j=0; j<marks[i].length; j++) } } } { marks[i][j] = i*j; System.out.print(marks[i][j]+" "); } System.out.println();

67 Συμβολοσειρές (Strings) Μία συμβολοσειρά είναι μία σειρά από χαρακτήρες. Στη Java μία συμβολοσειρά υλοποιείται με τη τάξη String του πακέτου java.lang. Ένα String είναι ένα αντικείμενο και όπως όλα τα αντικείμενα πρέπει να δηλωθεί και να δημιουργηθεί με την εντολή new, όπως στο παράδειγμα: String s = new String(); Εναλλακτικά μπορούμε να δημιουργήσουμε ένα String αν του αποδώσουμε μία τιμή που θα είναι μία σταθερά συμβολοσειρά, όπως στο παράδειγμα: String s = "George";

68 Οι παράμετροι της main Όπως ήδη θα έχετε παρατηρήσει στη μέθοδο main περνιέται σαν παράμετρος ένας πίνακας από String που το ονομάσαμε args. Αυτός ο πίνακας είναι μία σειρά παράμετροι που μπορούν να περαστούν στην εφαρμογή όταν τη ξεκινάμε, ως εξής: java <όνομα-τάξης> <παράμετρος-0> <παράμετρος-ν> π.χ. java CheckUser Master

69 Παράδειγμα με παραμέτρους στη main class CheckUser { public static void main(string[] args) { if (args[0].equals("master")) { System.out.println("Welcome Master!"); //Kane kati epitrepto mono gia //tous Masters } else System.out.println( Unauthorized User! ); } }

70 Εμβέλεια μεταβλητών (scope) Η εμβέλεια μίας μεταβλητής είναι η περιοχή εκείνη του προγράμματός μας στην οποία η μεταβλητή είναι ορατή και καθορίζει πότε η μεταβλητή δημιουργείται και καταστρέφεται. Υπάρχουν τέσσερα ήδη μεταβλητών με αντίστοιχα τέσσερις περιοχές εμβέλειας: Μεταβλητές μέλη με εμβέλεια την τάξη Τοπικές μεταβλητές με εμβέλεια την ομάδα εντολών στην οποία δηλώνονται Παράμετροι μεθόδων με εμβέλεια την μέθοδο μέσα στην οποία δηλώνονται, και Παράμετροι χειριστών εξαιρέσεων με εμβέλεια την ομάδα εντολών του χειριστή εξαιρέσεων

71 Η εμβέλεια των μεταβλητών φαίνεται πιο παραστατικά στην παρακάτω εικόνα:

72 Java Applets Τί είναι ένα Java Applet Τα Java Applets είναι προγράμματα Java τα οποία είναι σχεδιασμένα για να εκτελούνται από ένα πρόγραμμα πλοήγησης (browser). Για λόγους διευκόλυνσης των προγραμματιστών, η Sun παρέχει με κάθε JDK (Java Development Kit) και ένα πρόγραμμα εκτέλεσης των Applets το οποίο λέγεται appletviewer. Κάθε Applet θα πρέπει να επεκτείνει την τάξη java.applet.applet και να υλοποιεί κάποιες μεθόδους (τουλάχιστον τη μέθοδο paint). Γιαναεκτελέσουμεέναapplet μέσα από ένα browser ήαπότον appletviewer θα πρέπει να συμπεριλάβουμε την τάξη του applet σε μια HTML σελίδα χρησιμοποιώντας το tag <Applet>. Στη συνέχεια μπορούμε να φορτώσουμε τη σελίδα στο browser ή να δώσουμε appletviewer <όνομα HTML αρχείου> για να δούμε το Applet να εκτελείται

73 Παράδειγμα Java Applet Το java πρόγραμμα είναι το ακόλουθο: import java.applet.applet; import java.awt.graphics; public class HelloWorldApplet extends Applet { public void paint(graphics g) { g.drawstring("hello world!", 50, 25); } } To HTML αρχείο είναι το ακόλουθο: <applet code="helloworldapplet.class" width=300 height=300> </applet> Γιαναεκτελέσουμετοapplet θα πρέπει να φορτώσουμε την HTML σελίδα είτε σε ένα browser (π.χ. τον Internet Explorer) ή να εκτελέσουμε το applet με τον

74 Τάξεις Αντικειµενοστραφής Προγραµµατισµός Κλάσεις Αντικείµενα Ιεραρχία κλάσεων Κλάσεις. Ιδιότητες Συµπεριφορά Ιδιότητες (Μεταβλητές) Συµπεριφορά (Μέθοδοι) Κληρονοµικότητα Μέθοδοι επικάλυψης Ηχρήσητουthis και του super

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

76 Κλάσεις Αντικείµενα Στον αντικειµενοστραφή προγραµµατισµό δηµιουργούµε τις κλάσεις. Οι κλάσεις χρησιµοποιούνται ως πρότυπα για την δηµιουργία των αντικειµένων. Ιδιότητες : Περιγράφουν το αντικείµενο και δείχνουν σε τι διαφέρει σε σχέση µε τα άλλα αντικείµενα. Συµπεριφορά : Είναι τα όσα κάνει ένα αντικείµενο.

77 Ιεραρχία κλάσεων Οι κλάσεις οργανώνονται σε ιεραρχίες κλάσεων µε µορφή πυραµίδας. Με αυτόν τον τρόπο επιτυγχάνεται η κληρονοµικότητα (inheritance) στον αντικειµενοστραφή προγραµµατισµό.

78 Κλάσεις Αντικείµενα Γενικό διάγραµµα κλάσης: public class ΟνοµαΚλασης { int a=10; double b; public String name= Panos ; private double x, y; public method_1( ) {.. }.. public method_n( ) {.. } Μεταβλητές (Ιδιότητες) Μέθοδοι (Συμπεριφορά) }

79 Κλάσεις Αντικείµενα Παράδειγµα δηµιουργίας αντικειµένου µε τοnew: ΟνοµαΚλασης ονοµααντικειµένου = new ΟνοµαΚλασης(); Η πρόσβαση των κλάσεων καθορίζεται από τα παρακάτω: public: Είναι προσβάσιµη από κάθε άλλη κλάση. final: εν µπορούν να ορισθούν υποκλάσεις της.

80 Ιδιότητες (Μεταβλητές) Οι ιδιότητες ενός αντικειµένου αντιπροσωπεύουν τις µεταβλητές που χρειάζονται για να λειτουργήσει ένα αντικείµενο. Πρόσβαση µεταβλητών: public : protected : private : final : static : Έλλειψη δήλωσης : Είναι προσβάσιµη από κάθε άλλη κλάση. Είναι προσβάσιµη µόνο µέσα από τη δική της κλάση και από τιςυποκλάσειςτης. Είναι προσβάσιµη µόνο µέσα από τη δική της κλάση Είναι σταθερά η οποία αρχικοποιείται µόνο αρχικά και δεν αλλάζει τιµή. Κοινή µεταβλητή για όλα τα αντικείµενα της κλάσης (Μεταβλητή κλάσης). Χρησιµοποίηση µόνο µέσα από τη δική της κλάση και από κλάσεις στο ίδιο πακέτο.

81 Ιδιότητες (Μεταβλητές) Τρόπος πρόσβασης μεταβλητής ενός αντικειμένου. public class TestClass{ public int a=10; public String b = test! ; } TestClass x = new TestClass(); x.a x.b Οακέραιος10 Η συµβολοσειρά test

82 Συµπεριφορά (Μέθοδοι) Η συµπεριφορά περιγράφει τα διάφορα τµήµατα µιας κλάσης που εκτελούν συγκεκριµένες εργασίες. Καθένα από αυτά τα τµήµατα ονοµάζεται µέθοδος. Πρόσβαση µεθόδων public : protected : private : final : static : native : Είναι προσβάσιµη από κάθε άλλη κλάση. Είναι προσβάσιµη µόνο µέσα από τη δική της κλάση και από τις υποκλάσεις της. Είναι προσβάσιµη µόνο µέσα από τη δική της κλάση εν µπορεί να επικαλυφθεί (override) από κάποια υποκλάση. Είναι κοινή σε όλες τις θυγατρικές. Το σώµα της εκτελείται σε άλλη γλώσσα προγραµµατισµού.

83 Συµπεριφορά (Μέθοδοι) Τρόπος πρόσβασης µιας µεθόδου ενός αντικειµένου. public class TestClass{.. public void printname(string name) { System.out.println(name); }.. Απλή Κλάση } TestClass x = new TestClass(); x.printname( Panos ); Εκτύπωση του Panos µέσω της µεθόδου printname() του αντικειµένου x.

84 ηµιουργία τυπικής κλάσης public class ΟνοµαΚλασης { }

85 Συµπεριφορά (Μέθοδοι) Βασικές κατηγορίες µεθόδωνγιατηνδηµιουργία κλάσεων: Μέθοδοι Kατασκευής (Constructors). Ηδηµιουργία ενός αντικειµένου γίνεται µε την χρήση της δήλωσης new. Παράδειγµα: TestClass x = new TestClass(); Ηδήλωσηnew καλεί µια ειδική µέθοδο της κλάσης του αντικειµένου η οποία ονοµάζεται µέθοδος κατασκευής γιατί αναλαµβάνει την εργασία που απαιτείται για την δηµιουργία του αντικειµένου. Μία κλάση µπορεί να περιέχει και περισσότερες από µία µεθόδους κατασκευής. Όλες φέρουν το όνοµα της κλάσης. Εάν δεν περιλαµβάνονται µέθοδοι κατασκευής σε µία κλάση, αυτή θα κληρονοµήσει µια µέθοδο κατασκευής χωρίς ορίσµατα από την υπερκλάση της.

86 Συµπεριφορά (Μέθοδοι) Μέθοδοι πρόσβασης (Accesors). Είναι απλές µέθοδοι οι οποίες επιστρέφουν τιµές των βασικών µεταβλητών ενός αντικειµένου. Οι µέθοδοι πρόσβασης µπορούν να παραληφθούν όταν οι µεταβλητές είναι public. Καλό όµως είναι να αποφεύγουµε τιςpublic µεταβλητές και να χρησιµοποιούµε µεθόδους πρόσβασης. Μέθοδοι ελέγχου ισότητας αντικειµένων (equals). Αποτελούν βασικές µεθόδους οι οποίες ελέγχουν εάν δύο αντικείµενα µιας κλάσης είναι ίσα µεταξύ τους. Κατά την ανάπτυξή τους πρέπει να λαµβάνονται υπ όψη όλες οι ιδιότητες και συµπεριφορές των αντικειµένων.

87 Συµπεριφορά (Μέθοδοι) Μέθοδος εκτύπωσης αντικειµένου (tostring()). Υπάρχει µια ειδική µέθοδος στη Java για την εκτύπωση ενός αντικειµένου public String tostring() {. } Με αυτόν τον τρόπο είναι δυνατή η εκτύπωση ενός αντικειµένου µέσω της µεθόδου println().

88 Παράδειγµα 1 µε κλάση ηµιουργήστε µια κλάση αντικειµένων Point η οποία να περιγράφει σηµεία στο επίπεδο. Να περιλαµβάνει µια µέθοδο κατασκευής, τις µεθόδους πρόσβασης στις συντεταγµένες x και y του σηµείου, µια µέθοδο ελέγχου ισότητας δύο αντικειµένων και µια µέθοδο εκτύπωσης ενός αντικειµένου. Στη συνέχεια γράψτε ένα πρόγραµµα στο οποίο να χρησιµοποιήσετε την κλάση που φτιάξατε και να δηµιουργήσετε δύο σηµεία στο επίπεδο. Με την βοήθεια των δύο αυτών σηµείων να ελέγξετε την κλάση των αντικειµένων που δηµιουργήσατε.

89 Παράδειγµα 1 µε κλάση

90 Παράδειγµα 1 µε κλάση

91 Παράδειγµα 1 µε κλάση

92 Κληρονοµικότητα Κληρονοµικότητα (inheritance) είναι ο τρόπος µε τον οποίο ένα αντικείµενο µπορεί να κληρονοµήσει ιδιότητες και συµπεριφορά από άλλα αντικείµενα, που είναι όµοια µε αυτό. Μέσω της κληρονοµικότητας µπορούµε να δηµιουργήσουµε µια νέα κλάση αντικειµένων προσδιορίζοντας µόνο τα σηµεία εκείνα στα οποία αυτή διαφέρει από µια υπάρχουσα κλάση. class TestB extends TestA {. }

93 Κληρονοµικότητα Παράδειγµα: Το γενεαλογικό δένδρο της κλάσης JAPPLET

94 Κληρονοµικότητα Μέθοδοι επικάλυψης Όταν µια µέθοδος ορίζεται σε µια υποκλάση και στην υπερκλάση, χρησιµοποιείται η µέθοδος της υποκλάσης. Αυτό επιτρέπει σε µια υποκλάση να αλλάζει, να αντικαθιστά ή να καταργεί τελείως µέρος της συµπεριφοράς ή των ιδιοτήτων των υπερκλάσεων της. Ηδηµιουργία µιας νέας µεθόδου σε µια υποκλάση, έτσι ώστε να αλλάξει η συµπεριφορά που κληρονοµήθηκε από µια υπερκλάση ονοµάζεται µέθοδος επικάλυψης (Overriding).

95 Κληρονοµικότητα Ηχρήσητουthis και του super Με τη λέξη this αναφερόµαστε σε µεταβλητές του τρέχοντος αντικειµένου µας. public class ΟνοµαΚλασης { private int a; public µεθοδοςα( int a){ this.a = 15;. } }

96 Κληρονοµικότητα Ηχρήσητουthis και του super Σε υποκλάσεις η λέξη this χρησιµοποιείται όταν θέλουµε να αναφερθούµε σεµεταβλητές και µεθόδους του τρέχοντος αντικειµένου µας.

97 Κληρονοµικότητα Ηχρήσητουthis και του super Η λέξη super χρησιµοποιείται όταν θέλουµε να αναφερθούµε σε µεταβλητές και µεθόδους της αµέσως προηγούµενης υπερκλάσης του αντικειµένου µας.

98 Κληρονοµικότητα Παράδειγµα 2 µε κλάση ηµιουργήστε µια κλάση αντικειµένων Student η οποία να περιγράφει φοιτητές. Ένας φοιτητής έχει το όνοµα τοεπώνυµό και τον αριθµό µητρώου του. Η κλάση που θα δηµιουργήσετε πρέπει να περιλαµβάνει µια µέθοδο κατασκευής, τις µεθόδους πρόσβασης στο όνοµα, το επώνυµό και τον αριθµό µητρώου του φοιτητή και µια µέθοδο εκτύπωσης ενός αντικειµένου. Στη συνέχεια να δηµιουργήσετε την κλάση JavaStudent η οποία να επεκτείνει την κλάση Student µε τον βαθµό κάθε φοιτητή στο µάθηµα τηςjava. Η νέα κλάση πρέπει να περιλαµβάνει µια µέθοδο κατασκευής, µια µέθοδο πρόσβασης στο βαθµό τουφοιτητήκαιµια µέθοδο εκτύπωσης ενός αντικειµένου. Στη συνέχεια γράψτε ένα πρόγραµµα στο οποίο να δηµιουργήσετε τέσσερα αντικείµενα της κλάσης JavaStudent. Εισάγετε κατάλληλα δεδοµένα σε αυτά και εκτυπώστε τα.

99 Κληρονοµικότητα Παράδειγµα 2 µε κλάση

100 Κληρονοµικότητα Παράδειγµα 2 µε κλάση

101 Κληρονοµικότητα Παράδειγµα 2 µε κλάση

102 Κληρονοµικότητα Παράδειγµα 2 µε κλάση

Mεταβλητές (variables) και Σταθερές (constants)

Mεταβλητές (variables) και Σταθερές (constants) Mεταβλητές (variables) και Σταθερές (constants) Οι μεταβλητές είναι οι θέσεις μνήμης στις οποίες ένα πρόγραμμα τοποθετεί τα δεδομένα του κατά τη διάρκεια της λειτουργίας του. θα μάθουμε: πως δηλώνουμε

Διαβάστε περισσότερα

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

Κλάσεις. Κατηγορίες Αντικειµένων. Κλάσεις. Φυσικά Αντικείµενα. Χώρος = Οµάδα Φυσικών Αντικειµένων. Πρόγραµµα = Οµάδα Αντικειµενοστραφής Προγραµµατισµός Αντικείµενα Ιεραρχία κλάσεων. Ιδιότητες Συµπεριφορά Ιδιότητες (Μεταβλητές) Συµπεριφορά (Μέθοδοι) Κληρονοµικότητα Μέθοδοι επικάλυψης Η χρήση του this και του super Αντικειµενοστραφής

Διαβάστε περισσότερα

Δομές ελέγχου ροής προγράμματος

Δομές ελέγχου ροής προγράμματος Δομές ελέγχου ροής προγράμματος Υπάρχουν δύο είδη δομών ελέγχου ροής (control flow): Οι δομές επιλογής και Οι δομές επανάληψης Δομές ελέγχου ροής προγράμματος Είδος δομής Δομές επιλογής Δομή ελέγχου ροής

Διαβάστε περισσότερα

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

Αντικειµενοστραφής Προγραµµατισµός Κλάσεις Αντικειµενοστραφής Προγραµµατισµός Κλάσεις Αντικείµενα Ιεραρχία κλάσεων Κλάσεις. Ιδιότητες Συµπεριφορά Ιδιότητες (Μεταβλητές) Συµπεριφορά (Μέθοδοι) Κληρονοµικότητα Μέθοδοι επικάλυψης Η χρήση του

Διαβάστε περισσότερα

Εισαγωγή στη JAVA. Εισαγωγή στη Java. Η Java είναι δημιούργημα της SUN MICROSYSTEMS.

Εισαγωγή στη JAVA. Εισαγωγή στη Java. Η Java είναι δημιούργημα της SUN MICROSYSTEMS. Εισαγωγή στη JAVA Σύντομο Ιστορικό Η Java και το διαδίκτυο Το πρώτο απλό πρόγραμμα σε JAVA Μεταβλητές και σταθερές Παραστάσεις και εντολές Οι βασικοί τύποι δεδομένων στη Java Οι βασικοί Τελεστές στη Java

Διαβάστε περισσότερα

32-bit signed υποδιαστολής) Double διπλής ακρίβειας 64-bit signed Char unicode character 16-bit Boolean Boolean true or false

32-bit signed υποδιαστολής) Double διπλής ακρίβειας 64-bit signed Char unicode character 16-bit Boolean Boolean true or false 3. Τύποι δεδομένων - εντολές - τελεστές 3.1 Τύποι δεδομένων στην JAVA Οι τύποι δεδομένων στην JAVA είναι σαν αυτούς της C με μόνη διαφορά ότι το μέγεθός τους (σε bytes) είναι γνωστό και ίδιο σε όλες τις

Διαβάστε περισσότερα

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων 2 Βασικές Εντολές 2.1. Εντολές Οι στην Java ακολουθούν το πρότυπο της γλώσσας C. Έτσι, κάθε εντολή που γράφουμε στη Java θα πρέπει να τελειώνει με το ερωτηματικό (;). Όπως και η C έτσι και η Java επιτρέπει

Διαβάστε περισσότερα

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

Αντικειμενοστρεφής Προγραμματισμός Αντικειμενοστρεφής Προγραμματισμός Διδάσκουσα: Αναπλ. Καθηγήτρια Ανδριάνα Πρέντζα aprentza@unipi.gr Εργαστηριακός Συνεργάτης: Δρ. Βασιλική Κούφη vassok@unipi.gr Εργαστήριο 2 Βασικοί Τύποι Μεταβλητών Java

Διαβάστε περισσότερα

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

Αντικειµενοστρεφής Προγραµµατισµός 16 η διάλεξη Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 Προηγούµενη ιάλεξη

Διαβάστε περισσότερα

Στοιχειώδης προγραμματισμός σε C++

Στοιχειώδης προγραμματισμός σε C++ Στοιχειώδης προγραμματισμός σε C++ Σύντομο Ιστορικό. Το πρόγραμμα Hello World. Ο τελεστής εξόδου. Μεταβλητές και δηλώσεις τους. Αντικείμενα, μεταβλητές, σταθερές. Ο τελεστής εισόδου. Θεμελιώδεις τύποι.

Διαβάστε περισσότερα

Διάλεξη 3: Προγραμματισμός σε JAVA I. Διδάσκων: Παναγιώτης Ανδρέου

Διάλεξη 3: Προγραμματισμός σε JAVA I. Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 3: Προγραμματισμός σε JAVA I Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: - Στοιχειώδης Προγραμματισμός - Προγραμματισμός με Συνθήκες - Προγραμματισμός με Βρόγχους

Διαβάστε περισσότερα

Κληρονομικότητα. Κληρονομικότητα (inheritance) είναι ο τρόπος µε τον οποίο μία τάξη μπορεί να κληρονομήσει ιδιότητες και συμπεριφορά από άλλες τάξεις.

Κληρονομικότητα. Κληρονομικότητα (inheritance) είναι ο τρόπος µε τον οποίο μία τάξη μπορεί να κληρονομήσει ιδιότητες και συμπεριφορά από άλλες τάξεις. Κληρονομικότητα (inheritance) είναι ο τρόπος µε τον οποίο μία τάξη μπορεί να κληρονομήσει ιδιότητες και συμπεριφορά από άλλες τάξεις. Μέσω της κληρονομικότητας μπορούμε να δημιουργήσουμε µια νέα τάξη (θυγατρική)

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός (ΤΛ1006)

Δομημένος Προγραμματισμός (ΤΛ1006) Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008 ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008 Κατασκευαστές (Constructors) Ειδικός τύπος μεθόδων, οι οποίες: - είναι public και έχουν το ίδιο όνομα με αυτό της κλάσης - χρησιμοποιούνται για να αρχικοποιήσουν κάποιες

Διαβάστε περισσότερα

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 2 : ΜΕΤΑΒΛΗΤΕΣ ΤΕΛΕΣΤΕΣ & ΕΚΦΡΑΣΕΙΣ ΕΛΕΓΧΟΣ ΡΟΗΣ

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 2 : ΜΕΤΑΒΛΗΤΕΣ ΤΕΛΕΣΤΕΣ & ΕΚΦΡΑΣΕΙΣ ΕΛΕΓΧΟΣ ΡΟΗΣ Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 2 : ΜΕΤΑΒΛΗΤΕΣ ΤΕΛΕΣΤΕΣ & ΕΚΦΡΑΣΕΙΣ ΕΛΕΓΧΟΣ ΡΟΗΣ Κων. Κόκκινος Μεταβλητές-1 Οι μεταβλητές αποτελούν θέσεις μνήμης στις οποίες αποθηκεύονται τιμές αντίστοιχες

Διαβάστε περισσότερα

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07 Αριθμητική στο δυαδικό σύστημα (γενικά) Συμπληρωματικά για δυαδικό σύστημα Η πρόσθεση στηρίζεται στους κανόνες: 0 + 0 = 0, 0 + 1 = 1, 1

Διαβάστε περισσότερα

ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός

ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός Παναγιώτης Σφέτσος sfetsos@it.teithe.gr Εντολές ελέγχου συγκρίσεων επιλογής ή διακλαδώσεων ( if switch) Μία από τις σημαντικότερες

Διαβάστε περισσότερα

Κλάσεις και Αντικείµενα

Κλάσεις και Αντικείµενα Κλάσεις και Αντικείµενα Γρηγόρης Τσουµάκας Τµήµα Πληροφορικής, Αριστοτέλειο Πανεπιστήµιο Θεσσαλονίκης Κλάσεις και Αντικείµενα 2 Τα αντικείµενα σε µια αντικειµενοστρεφή γλώσσα προγραµµατισµού, µοντελοποιούν

Διαβάστε περισσότερα

Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript

Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript Β.1 Τύποι Δεδομένων Όλες οι γλώσσες προγραμματισμού (πρέπει να) υποστηρίζουν πέντε (5) πρωταρχικούς τύπους δεδομένων: char (character) int (integer)

Διαβάστε περισσότερα

Ανάπτυξη και Σχεδίαση Λογισμικού

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Εκφράσεις και Λίγες Εντολές Οι εκφράσεις της C Τελεστές Απλές και σύνθετες εντολές Εντολές ελέγχου (επιλογής) Εισαγωγή σε

Διαβάστε περισσότερα

Βασικά Στοιχεία της Java

Βασικά Στοιχεία της Java Βασικά Στοιχεία της Java Παύλος Εφραιμίδης Java Βασικά Στοιχεία της γλώσσας Java 1 Τύποι Δεδομένων Η Java έχει δύο κατηγορίες τύπων δεδομένων: πρωτογενείς (primitive) τύπους δεδομένων αναφορές Java Βασικά

Διαβάστε περισσότερα

Βασικά της γλώσσας JAVA

Βασικά της γλώσσας JAVA 17 η διάλεξη Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 Προηγούµενη ιάλεξη

Διαβάστε περισσότερα

Εργαστήριο Java. Διδάσκουσα: Εργαστηριακοί Συνεργάτες:

Εργαστήριο Java. Διδάσκουσα: Εργαστηριακοί Συνεργάτες: Εργαστήριο Java Διδάσκουσα: Πρέντζα Ανδριάνα aprentza@unipi.gr Εργαστηριακοί Συνεργάτες: Γεωργιοπούλου Ρούλα Λύβας Χρήστος roulageorio@ssl-unipi.gr clyvas@unipi.gr Εργαστήριο 2 Βασικοί Τύποι Μεταβλητών

Διαβάστε περισσότερα

ΕισαγωγήστουςΗ/Υ. PHP Hypertext Preprocessor

ΕισαγωγήστουςΗ/Υ. PHP Hypertext Preprocessor ΕισαγωγήστουςΗ/Υ PHP Hypertext Preprocessor ΤιείναιηPHP; PHP είναιµία server-based scripting language σχεδιασµένη ειδικά για το web. Σε µία html σελίδα µπορούµε να ενσωµατώσουµε php κώδικα που εκτελείται

Διαβάστε περισσότερα

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η μέθοδος main(), εμφάνιση μηνυμάτων, Java προγράμματα που εκτελούν αριθμητικές πράξεις Γαβαλάς Δαμιανός

Διαβάστε περισσότερα

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

Αντικειμενοστραφής Προγραμματισμός Αντικειμενοστραφής Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Ενότητα 3: Έλεγχος ροής και επαναλήψεις. Δρ. Χαράλαμπος Ζ. Πατρικάκης Τμήμα Ηλεκτρονικών Μηχανικών

Διαβάστε περισσότερα

ΗΥ-150. Προγραµµατισµός. Εντολές Ελέγχου Ροής

ΗΥ-150. Προγραµµατισµός. Εντολές Ελέγχου Ροής ΗΥ-150 Εντολές Ελέγχου Ροής Σειριακή εκτέλεση εντολών Όλα τα προγράµµατα «γράφονται» χρησιµοποιώντας 3 είδη εντολών: Σειριακές εντολές (sequential built in C) Εντολές απόφασης (if, if/else, switch) Περιλαµβάνει

Διαβάστε περισσότερα

Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η

Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η μέθοδος main(), εμφάνιση μηνυμάτων, Java προγράμματα που εκτελούν αριθμητικές πράξεις 2 Ανατομία ενός προγράμματος

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java Είσοδος Χρησιμοποιούμε την κλάση Scanner της Java import java.util.scanner; Αρχικοποιείται με το ρεύμα εισόδου: Scanner in = new Scanner(System.in);

Διαβάστε περισσότερα

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

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Έλεγχος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Σχεσιακοί Τελεστές και Ισότητας Ένα πρόγραμμα εκτός από αριθμητικές πράξεις

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 3: Έλεγχος ροής προγράμματος

ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 3: Έλεγχος ροής προγράμματος ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 3: Έλεγχος ροής προγράμματος Μιχάλης Δρακόπουλος Σχολή Θετικών επιστημών Τμήμα Μαθηματικών ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (Java) Ενότητα 3 ΕΛΕΓΧΟΣ ΡΟΗΣ ΠΡΟΓΡΑΜΜΑΤΟΣ Ι. Ελεγκτές συνθηκών ή περιπτώσεων:

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων Δομημένος Προγραμματισμός Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 2 Νέο Πρόγραμμα

Διαβάστε περισσότερα

3. Εκφράσεις και έλεγχος ροής

3. Εκφράσεις και έλεγχος ροής 3. Εκφράσεις και έλεγχος ροής Τελειώνοντας αυτό το κεφάλαιο θα μπορείτε: Να διακρίνετε ανάμεσα σε μεταβλητές μέλη και αυτόματες μεταβλητές Να περιγράφετε την αρχικοποίηση των μεταβλητών μελών Να αναγνωρίζετε

Διαβάστε περισσότερα

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

2.1 Αντικειµενοστρεφής προγραµµατισµός 2.1 Αντικειµενοστρεφής προγραµµατισµός Στον αντικειµενοστρεφή προγραµµατισµό (object oriented programming, OOP) ένα πρόγραµµα υπολογιστή είναι ένα σύνολο αλληλεπιδρώντων αντικειµένων. Μπορεί να ειπωθεί

Διαβάστε περισσότερα

Ανάπτυξη και Σχεδίαση Λογισμικού

Ανάπτυξη και Σχεδίαση Λογισμικού Ανάπτυξη και Σχεδίαση Λογισμικού Η γλώσσα προγραμματισμού C Γεώργιος Δημητρίου Βασικά Στοιχεία Το αλφάβητο της C Οι βασικοί τύποι της C Δηλώσεις μεταβλητών Είσοδος/Έξοδος Βασικές εντολές της C Αλφάβητο

Διαβάστε περισσότερα

Κατασκευαστές. Μέθοδοι Κατασκευής (Constructors).

Κατασκευαστές. Μέθοδοι Κατασκευής (Constructors). Κατασκευαστές Μέθοδοι Κατασκευής (Constructors). Οι κατασκευαστές (constructors) είναι μέθοδοι που εκτελούνται όταν κατασκευάζεται ένα αντικείμενο. Μια τάξη μπορεί να έχει αρκετούς κατασκευαστές, οι οποίοι

Διαβάστε περισσότερα

Java sessions. Part 1 - Βασικά έννοιες - μέθοδοι

Java sessions. Part 1 - Βασικά έννοιες - μέθοδοι Java sessions Part 1 - Βασικά έννοιες - μέθοδοι Ενότητα 1 Η γλώσσα Java 1.1 - Ιστορία Ξεκίνησε το 1995 από τον James Gosling, υπάλληλο της Sun Microsystems Αρχικά ονομάστηκε Oak, αργότερα άλλαξε σε Java

Διαβάστε περισσότερα

Βασικά Στοιχεία της Java

Βασικά Στοιχεία της Java Βασικά Στοιχεία της Παύλος Εφραιμίδης 1 Βασικά Στοιχεία της γλώσσας Τύποι Δεδομένων Η έχει δύο κατηγορίες τύπων δεδομένων: πρωτογενείς (primitive) iti τύπους δεδομένων δδ αναφορές 2 Βασικά Στοιχεία της

Διαβάστε περισσότερα

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων

Δομημένος Προγραμματισμός. Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων Δομημένος Προγραμματισμός Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr Τμήμα Επιχειρηματικού Σχεδιασμού και Πληροφοριακών Συστημάτων www.bpis.teicrete.gr 2 Παρατηρήσεις

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 18/3/2008

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 18/3/2008 ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 18/3/2008 - Παράδειγμα με switch (το οποίο δείχνει επίσης πότε σε μια άσκηση χρησιμοποιούμε user-input και System.out.println() για έξοδο και πότε χρησιμοποιούμε είσοδο σε μέθοδο

Διαβάστε περισσότερα

Βασικά στοιχεία της Java

Βασικά στοιχεία της Java Βασικά στοιχεία της Java προτάσεις, εκφράσεις, µεταβλητές, σταθερές, τελεστές Ορισµοί Πρόταση (statement) είναι µία απλή εντολή σε µία γλώσσα προγραµµατισµού. Γιαπαράδειγµα: int x=12; Έκφραση (expression)

Διαβάστε περισσότερα

for for for for( . */

for for for for( . */ Εισαγωγή Στον Προγραµµατισµό «C» Βρόχοι Επανάληψης Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Ο βρόχος for Η εντολή for χρησιµοποιείται

Διαβάστε περισσότερα

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

Γενικά (για τις γραπτές εξετάσεις) Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Διάλεξη #12 η : Επανάληψη Γαβαλάς Δαμιανός dgavalas@aegean.gr Γενικά (για τις γραπτές εξετάσεις) Δεν υπάρχει αυστηρά ορισμένη «ύλη εξετάσεων» (καθώς δεν έχετε

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java III

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java III ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java III Ισότητα Strings class StringTest public static void main(string args[]) String x1 = "java"; String y1 = "java"; System.out.println("1.

Διαβάστε περισσότερα

Διαδικασιακός Προγραμματισμός

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 4 η Τελεστές Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή Σωτήρης

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στη Python Νικόλαος Ζ. Ζάχαρης Αναπληρωτής

Διαβάστε περισσότερα

HelloApplet. Παύλος Εφραιμίδης Java Applets 1

HelloApplet. Παύλος Εφραιμίδης Java Applets 1 HelloApplet Παύλος Εφραιμίδης pefraimi@ee.duth.gr Java Applets 1 Applets Τα Applets είναι προγράμματα Java που μπορούν να εκτελεστούν μέσα στο περιβάλλον ενός Browser (Firefox, Internet Explorer, Netscape,

Διαβάστε περισσότερα

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 7 η Διάλεξη: Σύντομη εισαγωγή στην Java

Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 7 η Διάλεξη: Σύντομη εισαγωγή στην Java Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου 7 η Διάλεξη: Σύντομη εισαγωγή στην Java Δρ. Απόστολος Γκάμας Λέκτορας (407/80) gkamas@uop.gr Σχεδίαση Εφαρμογών και Υπηρεσιών Διαδικτύου Διαφάνεια 1 Εισαγωγή

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java II

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java II ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java II Strings Η κλάση String είναι προκαθορισμένη κλάση της Java που μας επιτρέπει να χειριζόμαστε αλφαριθμητικά. Ο τελεστής + μας επιτρέπει

Διαβάστε περισσότερα

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Μεταβλητές,

Διαβάστε περισσότερα

3 Αλληλεπίδραση Αντικειμένων

3 Αλληλεπίδραση Αντικειμένων Αφαίρεση και Αρθρωσιμότητα 3 Αλληλεπίδραση Αντικειμένων Πώς συνεργάζονται τα αντικείμενα που δημιουργούμε Αφαίρεση (abstraction) είναι η δυνατότητα να αγνοούμε τις λεπτομέρειες και να εστιάζουμε την προσοχή

Διαβάστε περισσότερα

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting)

3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting) Εργαστήριο 3: 3.1 Αριθμητικοί και Λογικοί Τελεστές, Μετατροπές Τύπου (Casting) Η C++, όπως όλες οι γλώσσες προγραμματισμού, χρησιμοποιεί τελεστές για να εκτελέσει τις αριθμητικές και λογικές λειτουργίες.

Διαβάστε περισσότερα

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον

Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον Ανάπτυξη Εφαρμογών σε Προγραμματιστικό Περιβάλλον ΚΕΦΑΛΑΙΟ 2 2.4 Βασικές συνιστώσες/εντολές ενός αλγορίθμου 2.4.1 Δομή ακολουθίας ΚΕΦΑΛΑΙΟ 7 7.1 7.9 Σταθερές (constants): Προκαθορισμένες τιμές που παραμένουν

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java III

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java III ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java III Το if-else statement Το if-else statement δουλεύει καλά όταν στο condition θέλουμε να περιγράψουμε μια επιλογή με δύο πιθανά ενδεχόμενα.

Διαβάστε περισσότερα

ΗΥ-150. Προγραμματισμός

ΗΥ-150. Προγραμματισμός ΗΥ-150 Εντολές Ελέγχου Ροής Σειριακή εκτέλεση εντολών Όλα τα προγράμματα «γράφονται» χρησιμοποιώντας 3 είδη εντολών: Σειριακές εντολές (sequential built in C) Εντολές απόφασης (if, if/else, switch) Περιλαμβάνει

Διαβάστε περισσότερα

ΗΥ-150. Προγραμματισμός

ΗΥ-150. Προγραμματισμός ΗΥ-150 Εντολές Ελέγχου Ροής Σειριακή εκτέλεση εντολών Όλα τα προγράμματα «γράφονται» χρησιμοποιώντας 3 είδη εντολών: Σειριακές εντολές (sequential built in C) Εντολές απόφασης (if, if/else, switch) Περιλαμβάνει

Διαβάστε περισσότερα

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι 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

Διαβάστε περισσότερα

a = 10; a = k; int a,b,c; a = b = c = 10;

a = 10; a = k; int a,b,c; a = b = c = 10; C: Από τη Θεωρία στην Εφαρµογή Κεφάλαιο 4 ο Τελεστές Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας Ο τελεστής εκχώρησης = Ο τελεστής = χρησιµοποιείται για την απόδοση τιµής (ή αλλιώς ανάθεση τιµής) σε µία µεταβλητή Π.χ.

Διαβάστε περισσότερα

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 18/10/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 18/10/07 Αλγόριθμος: Βήμα προς βήμα διαδικασία για την επίλυση κάποιου προβλήματος. Το πλήθος των βημάτων πρέπει να είναι πεπερασμένο. Αλλιώς: Πεπερασμένη

Διαβάστε περισσότερα

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C Εισαγωγή στην C Μορφή Προγράµµατος σε γλώσσα C Τµήµα Α Με την εντολή include συµπεριλαµβάνω στο πρόγραµµα τα πρότυπα των συναρτήσεων εισόδου/εξόδου της C.Το αρχείο κεφαλίδας stdio.h είναι ένας κατάλογος

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ (ΤΛ2007 )

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Πέμπτη (5 η ) τρίωρη διάλεξη. Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Αναφορές

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Αναφορές ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Αναφορές Μαθήματα από το lab Υπενθύμιση: Η άσκηση ζητούσε να υλοποιήσετε μία κλάση vector που να διαχειρίζεται διανύσματα οποιουδήποτε

Διαβάστε περισσότερα

Οι εντολές ελέγχου της ροής ενός προγράμματος.

Οι εντολές ελέγχου της ροής ενός προγράμματος. Κεφάλαιο ΙΙI: Οι εντολές ελέγχου της ροής ενός προγράμματος 31 Εντολές ελέγχου της ροής Στο παρόν κεφάλαιο ασχολούμαστε με την σύνταξη των εντολών της C οι οποίες εισάγουν λογική και ελέγχουν την ροή εκτέλεσης

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java Βρόγχοι Το if-then Statement Στην Java το if-then statement έχει το εξής συντακτικό Η παρένθεση είναι απαραίτητη if (condition) if-code block

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ (ΤΛ2007 )

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2015-16

Διαβάστε περισσότερα

Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος

Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος Τμήμα Πληροφορικής & Επικοινωνιών Δρ. Θεόδωρος Γ. Λάντζος http://www.teiser.gr/icd/staff/lantzos lantzos@teiser.gr 1 Πώς δημιουργούμε πρόγραμμα Η/Υ; 1. Ανάλυση του προβλήματος 2. Επινόηση & Σχεδιασμός

Διαβάστε περισσότερα

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

Οντοκεντρικός Προγραμματισμός Οντοκεντρικός Προγραμματισμός Ενότητα 2: Η ΓΛΩΣΣΑ JAVA Σύγκριση JAVA-C ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής ΣΥΓΚΡΙΣΗ JAVA - C ΤΥΠΟΙ

Διαβάστε περισσότερα

Προγραμματισμός Διαδικτύου

Προγραμματισμός Διαδικτύου 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Προγραμματισμός Διαδικτύου Ενότητα 1 : Εισαγωγικές έννοιες Ιωάννης Τσούλος 2 Ανοιχτά Ακαδημαϊκά Μαθήματα στο ΤΕΙ Ηπείρου Τμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αντικείμενα με πίνακες. Constructors. Υλοποίηση Στοίβας

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αντικείμενα με πίνακες. Constructors. Υλοποίηση Στοίβας ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αντικείμενα με πίνακες. Constructors. Υλοποίηση Στοίβας Στην άσκηση αυτή θα υλοποιήσετε μια κλάση Geometric η οποία διαχειρίζεται μια γεωμετρική ακολουθία ακεραίων

Διαβάστε περισσότερα

Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα.

Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα. Ερωτήσεις προόδου C Παρακάτω δίνεται o σκελετός προγράμματος σε γλώσσα C. Σχολιάστε κάθε γραμμή του κώδικα. #include // δίνει οδηγία στον compiler να // συμπεριλάβει την βιβλιοθήκη stdio int

Διαβάστε περισσότερα

Διαδικασιακός Προγραμματισμός

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 5 η Έλεγχος Προγράμματος Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα C: Από τη Θεωρία στην Εφαρμογή

Διαβάστε περισσότερα

Κεφάλαιο 1: Τα βασικά της Java

Κεφάλαιο 1: Τα βασικά της Java Κεφάλαιο 1: Τα βασικά της Java Εξοικείωση µε το περιβάλλον Αυτό το µάθηµα αποσκοπεί σε µία πρώτη γνωριµία µε τη Java Για να ξεκινήσουµε... Για να ξεκινήσουµε θα πρέπει να έχουµε εγκαταστήσει στον υπολογιστή

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ (ΤΛ2007 )

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/ Εξάμηνο: Εαρινό 2014-15

Διαβάστε περισσότερα

Εισαγωγή στη γλώσσα προγραμματισμού JAVA. Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών

Εισαγωγή στη γλώσσα προγραμματισμού JAVA. Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών Εισαγωγή στη γλώσσα προγραμματισμού JAVA Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών Το πρώτο φλιτζάνι Java Λίστα με τα απαραίτητα Το πρώτο μου πρόγραμμα(hello World) Συνεχίζοντας

Διαβάστε περισσότερα

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 6/12/07 Πρώτοι αριθμοί ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 6/12/07 Ένας ακέραιος μεγαλύτερος του 1 είναι πρώτος αν έχει ακριβώς δύο διαιρέτες (τη μονάδα και τον εαυτό του). Πρόβλημα: έλεγχος

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Δημιουργία Κλάσεων και Αντικειμένων

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Δημιουργία Κλάσεων και Αντικειμένων ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Δημιουργία Κλάσεων και Αντικειμένων Κλάση Μια κλάση είναι μία αφηρημένη περιγραφή αντικειμένων με κοινά χαρακτηριστικά και κοινή συμπεριφορά. Ένα καλούπι/πρότυπο

Διαβάστε περισσότερα

Εισαγωγή στην γλώσσα προγραμματισμού C

Εισαγωγή στην γλώσσα προγραμματισμού C Εισαγωγή στην γλώσσα προγραμματισμού C Χαρακτηριστικά της C Ιδιαίτερα δημοφιλής Έχει χρησιμοποιηθεί για τον προγραμματισμό ευρέος φάσματος συστημάτων και εφαρμογών Γλώσσα μετρίου επιπέδου Φιλοσοφία: Ο

Διαβάστε περισσότερα

3 ο Εργαστήριο Μεταβλητές, Τελεστές

3 ο Εργαστήριο Μεταβλητές, Τελεστές 3 ο Εργαστήριο Μεταβλητές, Τελεστές Μια μεταβλητή έχει ένα όνομα και ουσιαστικά είναι ένας δείκτης σε μια συγκεκριμένη θέση στη μνήμη του υπολογιστή. Στη θέση μνήμης στην οποία δείχνει μια μεταβλητή αποθηκεύονται

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πίνακες Κλάσεις και Αντικείμενα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πίνακες Κλάσεις και Αντικείμενα ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πίνακες Κλάσεις και Αντικείμενα Μαθήματα από το πρώτο εργαστήριο Δημιουργία αντικειμένου Scanner Scanner input = new Scanner(System.in); Το αντικείμενο input

Διαβάστε περισσότερα

Προγραμματισμός Ι (HY120)

Προγραμματισμός Ι (HY120) Προγραμματισμός Ι (HY120) #3 τελεστές 1 Σπύρος Λάλης Τελεστής ανάθεσης Το σύμβολο της ανάθεσης είναι το = προσοχή: το σύμβολο ελέγχου ισότητας είναι το == Η μορφή των προτάσεων = 1. Αποτιμάται

Διαβάστε περισσότερα

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

Ειδικά Θέματα Προγραμματισμού Ειδικά Θέματα Προγραμματισμού Ενότητα 3: Τύποι Δεδομένων - Τελεστές Μιχάλας Άγγελος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

Προγραμματισμός Ι (ΗΥ120)

Προγραμματισμός Ι (ΗΥ120) Προγραμματισμός Ι (ΗΥ120) Διάλεξη 4: Τελεστές Τελεστές: Τελεστής Ανάθεσης 2 Το σύμβολο της ανάθεσης είναι το = Προσοχή: το σύμβολο ελέγχου ισότητας είναι το ==. Η μορφή των προτάσεων ανάθεσης είναι:

Διαβάστε περισσότερα

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΥΠΟΛΟΓΙΣΤΩΝ & ΥΠΟΛΟΓΙΣΤΙΚΗ ΦΥΣΙΚΗ Μέρος 4ο ΝΙΚΟΛΑΟΣ ΣΤΕΡΓΙΟΥΛΑΣ ΤΜΗΜΑ ΦΥΣΙΚΗΣ ΑΡΙΣΤΟΤΕΛΕΙΟ ΠΑΝΕΠΙΣΤΗΜΙΟ ΘΕΣΣΑΛΟΝΙΚΗΣ 1 ΟΙ ΤΕΛΕΣΤΕΣ ΣΥΓΚΡΙΣΗΣ Με τους τελεστές σύγκρισης, συγκρίνουμε τις

Διαβάστε περισσότερα

ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 1: Εισαγωγικές έννοιες

ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 1: Εισαγωγικές έννοιες ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 1: Εισαγωγικές έννοιες Μιχάλης Δρακόπουλος Σχολή Θετικών επιστημών Τμήμα Μαθηματικών ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (Java) Ενότητα 1 Αλγόριθμος: Βήμα προς βήμα διαδικασία για την επίλυση κάποιου

Διαβάστε περισσότερα

Αντικείµενα. ηµιουργία και χρησιµοποίηση αντικειµένων. ηµιουργία αντικειµένων

Αντικείµενα. ηµιουργία και χρησιµοποίηση αντικειµένων. ηµιουργία αντικειµένων Αντικείµενα ηµιουργία και χρησιµοποίηση αντικειµένων ηµιουργία αντικειµένων Για να δηµιουργήσω ένα νέο αντικείµενο χρησιµοποιώ τον τελεστή new µε τοόνοµατηςκλάσηςαπότηνοποίαθέλωναδηµιουργήσωένααντικείµενο,

Διαβάστε περισσότερα

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011 Εισαγωγή στον Προγραµµατισµό Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011 Hello World /* Αρχείο hello.c * Εµφανίζει στην οθόνη το * µήνυµα hello world */ #include

Διαβάστε περισσότερα

Ο βρόχος for Η εντολή for χρησιμοποιείται για τη δημιουργία επαναληπτικών βρόχων στη C

Ο βρόχος for Η εντολή for χρησιμοποιείται για τη δημιουργία επαναληπτικών βρόχων στη C Ο βρόχος for Η εντολή for χρησιμοποιείται για τη δημιουργία επαναληπτικών βρόχων στη C Επαναληπτικός βρόχος καλείται το τμήμα του κώδικα μέσα σε ένα πρόγραμμα, το οποίο εκτελείται από την αρχή και επαναλαμβάνεται

Διαβάστε περισσότερα

Δομές ελέγχου & επανάληψης

Δομές ελέγχου & επανάληψης 3 Δομές ελέγχου & επανάληψης Τι θα δούμε σε αυτό το μάθημα 1. δομές ελέγχου 1. η δομή if 2. η δομή switch 2. δομές επανάληψης 1. η δομή while 2. η δομή do...while 3. η δομή for 3. break και continue 4.

Διαβάστε περισσότερα

if(συνθήκη) {... // οµάδα εντολών } C: Από τη Θεωρία στην Εφαρµογή 5 ο Κεφάλαιο

if(συνθήκη) {... // οµάδα εντολών } C: Από τη Θεωρία στην Εφαρµογή 5 ο Κεφάλαιο C: Από τη Θεωρία στην Εφαρµογή Κεφάλαιο 5 ο Έλεγχος Προγράµµατος Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας Η εντολή if (Ι) Η εντολή if είναι µία από τις βασικότερες δοµές ελέγχου ροής στη C, αλλά και στις περισσότερες

Διαβάστε περισσότερα

ιαδικαστικός Προγραμματισμός

ιαδικαστικός Προγραμματισμός ΤΜΗΜΑ ΕΦΑΡΜΟΣΜΕΝΗΣ ΠΛΗΡΟΦΟΡΙΚΗΣ ιαδικαστικός Προγραμματισμός Α Εξάμηνο Μάθημα 2 ο : Εντολές ελέγχου > εντολές υπό συνθήκη Στόχοι μαθήματος Να κατανοήσετε τη σχέση μεταξύ εντολών και παραστάσεων. Να αναγνωρίζετε

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Constructors, equals, tostring

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Constructors, equals, tostring ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Constructors, equals, tostring Constructors (Δημιουργοί) O Constructor είναι μια «μέθοδος» η οποία καλείται όταν δημιουργούμε το αντικείμενο

Διαβάστε περισσότερα

Προγραμματισμός Η/Υ 1 (Εργαστήριο)

Προγραμματισμός Η/Υ 1 (Εργαστήριο) Προγραμματισμός Η/Υ 1 (Εργαστήριο) Ενότητα 2: Δομή ενός προγράμματος C Καθηγήτρια Εφαρμογών: Τσαγκαλίδου Ροδή Τμήμα: Ηλεκτρολόγων Μηχανικών Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες

Διαβάστε περισσότερα

Διαδικασιακός Προγραμματισμός

Διαδικασιακός Προγραμματισμός Τμήμα ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ ΤΕ ΤΕΙ ΔΥΤΙΚΗΣ ΕΛΛΑΔΑΣ Διαδικασιακός Προγραμματισμός Διάλεξη 2 η Τύποι Δεδομένων Δήλωση Μεταβλητών Έξοδος Δεδομένων Οι διαλέξεις βασίζονται στο βιβλίο των Τσελίκη και Τσελίκα

Διαβάστε περισσότερα

Υποστηρικτικό υλικό Σημειώσεις

Υποστηρικτικό υλικό Σημειώσεις ΔΙΑΔΙΚΤΥA : Υπηρεσίες, Τεχνολογία, Εφαρμογές Τμήμα Πληροφορικής Α.Π.Θ. Υποστηρικτικό υλικό Σημειώσεις Διδάσκοντες : Α. Βακάλη Γ. Παπαδημητρίου Εαρινό εξάμηνο 2000 2001 ΜΕΡΟΣ ΙΙ J A V A ΔΙΑΔΙΚΤΥA : Υπηρεσίες,

Διαβάστε περισσότερα

Ψευδοκώδικας. November 7, 2011

Ψευδοκώδικας. November 7, 2011 Ψευδοκώδικας November 7, 2011 Οι γλώσσες τύπου ψευδοκώδικα είναι ένας τρόπος περιγραφής αλγορίθμων. Δεν υπάρχει κανένας τυπικός ορισμός της έννοιας του ψευδοκώδικα όμως είναι κοινός τόπος ότι οποιαδήποτε

Διαβάστε περισσότερα

int array[10]; double arr[5]; char pin[20]; Προγραµµατισµός Ι

int array[10]; double arr[5]; char pin[20]; Προγραµµατισµός Ι Εισαγωγή Στον Προγραµµατισµό «C» Πίνακες Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Πίνακες στη C Ένας πίνακας στη C είναι

Διαβάστε περισσότερα

Μονοδιάστατοι πίνακες Πολυδιάστατοι πίνακες Μέθοδοι Μέθοδοι Recursive Overloading

Μονοδιάστατοι πίνακες Πολυδιάστατοι πίνακες Μέθοδοι Μέθοδοι Recursive Overloading Μονοδιάστατοι πίνακες Πολυδιάστατοι πίνακες Μέθοδοι Μέθοδοι Recursive Overloading Μονοδιάστατοι πίνακες Οι πίνακες είναι µεταβλητές που έχουν οµαδοποιηθεί µε ένα κοινό όνοµα. ηµιουργία πινάκων µετηδήλωσηnew

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πίνακες Κλάσεις και Αντικείμενα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πίνακες Κλάσεις και Αντικείμενα ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πίνακες Κλάσεις και Αντικείμενα Μαθήματα από το πρώτο εργαστήριο Έλεγχος ισότητας για Strings: Διαβάζουμε το String option και θέλουμε ένα loop να συνεχίσει

Διαβάστε περισσότερα

Προγραμματισμός ΗΥ και Υπολογιστική Φυσική. Χρήστος Γκουμόπουλος

Προγραμματισμός ΗΥ και Υπολογιστική Φυσική. Χρήστος Γκουμόπουλος Προγραμματισμός ΗΥ και Υπολογιστική Φυσική Χρήστος Γκουμόπουλος Προγραμματισμός ΗΥ και Υπολογιστική Φυσική Χρήστος Γκουμόπουλος Προγραμματισμός ΗΥ και Υπολογιστική Φυσική Χρήστος Γκουμόπουλος Προγραμματισμός

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Μέθοδοι Παράδειγμα 1 Θέλουμε ένα πρόγραμμα που να προσομοιώνει την κίνηση ενός αυτοκινήτου, το οποίο κινείται και τυπώνει τη θέση του.

Διαβάστε περισσότερα