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



Σχετικά έγγραφα
Βασικά Στοιχεία της Java

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

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

Τύποι Δεδομένων και Απλές Δομές Δεδομένων. Παύλος Εφραιμίδης V1.0 ( )

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

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

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

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

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

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

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

1 ΕΙΣΑΓΩΓΗ. Πρωταρχικοί Τύποι

Τύποι δεδομένων, τελεστές, μεταβλητές

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

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

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

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

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

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

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

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

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

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

Απλές Δοµές Δεδοµένων Στην ενότητα αυτή θα γνωρίσουµε ορισµένες απλές Δοµές Δεδοµένων και θα τις χρησιµοποιήσουµε για την αποδοτική επίλυση του προβλή

Αντικείμενα (Objects) στην Java. Αντικείμενα στη Java. Δημιουργία Αντικειμένων. Δηλώσεις Μεταβλητών (2) Ο τελεστής new (1)

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

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

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

2. Προσδιοριστές, δεσμευμένες λέξεις και τύποι

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

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

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

Δεδομένα, τελεστές, είσοδος/έξοδος

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

ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΜΑΘΗΜΑ 3 Ο. Σταθερές-Παράμετροι-Μεταβλητές Αριθμητικοί & Λογικοί Τελεστές Δομή ελέγχου-επιλογής Σύνθετοι έλεγχοι

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

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

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

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

Π. Σταθοπούλου ή Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7

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

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

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

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

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

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

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

ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα. Προγραμματισμός Η/Υ

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

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

Wrapper Classes Τοποθέτηση Δεδομένων Κλήση Μεθόδων. Παναγιώτης Σφέτσος, PhD

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

I (JAVA) Ονοματεπώνυμο: Α. Μ.: Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην.

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

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

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

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

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

Κεφάλαιο 15 Γλώσσα προγραμματισμού Java

Διάλεξη 5: Κλάσεις και Αντικείμενα. Διδάσκων: Παναγιώτης Ανδρέου

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

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

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

«ΕΙΔΙΚΑ ΘΕΜΑΣΑ ΣΟΝ ΠΡΟΓΡΑΜΜΑΣΙΜΟ ΤΠΟΛΟΓΙΣΩΝ» Κεφάλαιο 4: Αντικειμενοςτρεφήσ Προγραμματιςμόσ

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

Βασικάχαρακτηριστικάτηςγλώσσας. Πίνακες, Έλεγχος Ροής και Βρόχοι

Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή

I (JAVA) Ονοματεπώνυμο: Α. Μ.: Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην.

ΕΠΛ233 Βασικά στοιχεία προγραµµατισµού στη JAVA

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

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

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

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

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

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

2 Ορισμός Κλάσεων. Παράδειγμα: Μηχανή για Εισιτήρια. Δομή μιας Κλάσης. Ο Σκελετός της Κλάσης για τη Μηχανή. Ορισμός Πεδίων 4/3/2008

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

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

Γιάννης Σαμωνάκης. 1 ο ΣΧΟΛΕΙΟ ΚΩΔΙΚΑ «Βασικά Θέματα Προγραμματισμού στην Ανάπτυξη Δυναμικών Διαδικτυακών Εφαρμογών» (Part 4 - PHP)

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

Πανεπιστήµιο Πειραιά Τµήµα Εκπαιδευτικής Τεχνολογίας και Ψηφιακών Συστηµάτων. Εισαγωγή στη γλώσσα προγραµµατισµού. Java. Βασίλειος Βεσκούκης

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

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

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

Μεταγλωττιστές. Γιώργος Δημητρίου. Μάθημα 8 ο. Πανεπιστήμιο Θεσσαλίας - Τμήμα Ηλεκτρολόγων Μηχανικών & Μηχανικών Υπολογιστών

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

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

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

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

ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ

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

ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 2: Βασικές εντολές

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Στοίβα και Σωρός Αναφορές-Παράμετροι String Interning

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

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

ΕΠΛ 012. JavaScripts

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

Μεταγλωττιστές. Σημασιολογική Ανάλυση. Εργαστήριο 9. Διδάσκοντες: Δρ. Γεώργιος Δημητρίου Δρ. Άχμεντ Μάχντι

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

Wrapper Classes, Abstract Classes and Interfaces

Transcript:

Βασικά Στοιχεία της Java Παύλος Εφραιμίδης Java Βασικά Στοιχεία της γλώσσας Java 1

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

Πρωτογενείς (Primitive) Τύποι Δεδομένων Λέξη Κλειδί byte short int long float double char boolean ακέραιος Περιγραφή μικρός (short) ακέραιος Απλής ακρίβειας αριθ. κιν. υποδιαστ. Διπλής ακρίβειας αριθ. κιν. υποδιαστ. Ένας χαρακτήρας (Ακέραιοι) ακέραιος μεγέθους ενός byte μεγάλος (long) ακέραιος (Πραγματικοί) (Άλλοι Τύποι) Μια boolean τιμή (true ή false) Μέγεθος/Μορφή 8-bit two's complement 16-bit two's complement 32-bit two's complement 64-bit two's complement 32-bit IEEE 754 64-bit IEEE 754 16-bit Unicode character true ή false Java Βασικά Στοιχεία της γλώσσας Java 3

Παραδείγματα Τιμών Πρωτογενών Τύπων Δεδομένων Τιμή (Literal) Τύπος Δεδομένων Τιμή (Literal) Τύπος Δεδομένων 178 int 26.77e3 double 8864L long c char 37.266 double true boolean 37.266D double false boolean 87.363F float Java Βασικά Στοιχεία της γλώσσας Java 4

τελεστές Αριθμητικοί τελεστές: +, -, *, /, %, ++, -- Τελεστές σύγκρισης: <, >, >=, <=, ==,!= Λογικοί τελεστές: &, &&,,,!, ^ (λογικό xor) Τελεστές Ολίσθησης: <<, >>, >>> Java Βασικά Στοιχεία της γλώσσας Java 5

Τελεστέςεκχώρησηςτιμής = += -= *= /= %= &= ^= <<= >>= >>>= Παραδείγματα: op1 += op2; // op1 = op1 + op2; op1 /= op2; // op1 = op1 / op2; Java Βασικά Στοιχεία της γλώσσας Java 6

?: []. () (type) new instanceof Eιδικοί τελεστές Java Βασικά Στοιχεία της γλώσσας Java 7

Δομές Ελέγχου Ροής while() { } do { } while(); for ( ; ; ; ); if () then { } else { }; switch () { case 1: ; break; } Java Βασικά Στοιχεία της γλώσσας Java 8

Κλάσεις και Αντικείμενα Αντικείμενο: Το στιγμιότυπο μιας κλάσης Java Βασικά Στοιχεία της γλώσσας Java 9

αυτόματες μεταβλητές Οι βασικοί τύποι δεδομένων: boolean, int, long, float, double, char Όλες οι άλλες μεταβλητές είναι αντικείμενα Πρέπει να δώσουμε αρχική τιμή σε κάθε αυτόματη μεταβλητή Java Βασικά Στοιχεία της γλώσσας Java 10

final μεταβλητές Όταν πάρει μια τιμή final μεταβλητή δεν επιτρέπεταιναμεταβληθείητιμή. Ουσιαστικά είναι σταθερές final int afinalvar = 0; Εάν μια final μεταβλητή δηλωθεί αλλά δεν αρχικοποιηθεί ονομάζεται blank final. final int blankfinal;... blankfinal = 0; Java Βασικά Στοιχεία της γλώσσας Java 11

Block Μία ή περισσότερες εντολές μεταξύ 2 αγκυλών { ; ; } Παράδειγμα: if (i < 10) { <εντολές> Βlocks } else { <εντολές> } Java Βασικά Στοιχεία της γλώσσας Java 12

Εμβέλεια Ονομάτων Java Βασικά Στοιχεία της γλώσσας Java 13

Δυναμική Δημιουργία Αντικειμένων Στην Java όλατααντικείμενα δημιουργούνται δυναμικά με τον τελεστή new: double[] D = new double[10]; Java Βασικά Στοιχεία της γλώσσας Java 14

Αναφορές - Αντικείμενα Προσπέλαση των αντικειμένων γίνεται μέσω αναφορών Java Βασικά Στοιχεία της γλώσσας Java 15

Αποκομιδή Απορριμμάτων (Garbage Collection) Η Java υλοποιεί αυτόματη διαχείριση μνήμης Τα προγράμματα δημιουργούν δυναμικά αντικείμενα. Όταν τα αντικείμενα δεν χρησιμοποιούνται πλέον το περιβάλλον της Java αποδεσμεύει αυτόματα τα αντικείμενα αυτά Η διαδικασία αποδέσμευσης της μνήμης ονομάζεται Αποκομιδή Απορριμμάτων (Garbage Collection) Java Βασικά Στοιχεία της γλώσσας Java 16

package package είναι ένας μηχανισμός της java για την οργάνωση κλάσεων σε χώρους ονομάτων τα java packages μπορούν να αποθηκευτούν σε συμπιεσμένα αρχεία τύπου jar το package δηλώνεται στην αρχή του πηγαίου κώδικα της java πχ.: package dsalg.lab02 Java Βασικά Στοιχεία της γλώσσας Java 17

χώροι ονομάτων import java.util.random; import java.util.*; Java Βασικά Στοιχεία της γλώσσας Java 18

Μέλη Κλάσεων και Αντικειμένων (1) Μέλη Κλάσεων Ανήκουν στην κλάση: Οι μέθοδοι (class methods) και οι μεταβλητές μιας κλάσης (class variables) είναι συνδεδεμένες με μια συγκεκριμένη κλάση Ένα στιγμιότυπο: Γιακάθεμεταβλητήπουείναιμέλος μιας κλάσης δημιουργείται ένα ακριβώς στιγμιότυπο της μεταβλητής όταν φορτώνεται η κλάση στο σύστημα, ανεξάρτητα από το πόσα στιγμιότυπα (αντικείμενα) της κλάσης θα δημιουργηθούν Προσπέλαση μέσω της κλάσης: Η προσπέλαση των μελών μιας κλάσης γίνεται μέσω της κλάσης Java Βασικά Στοιχεία της γλώσσας Java 19

Στατικά Μέλη Μέλη που ανήκουν στην κλάση και όχι σε στιγμιότυπα ονομάζονται και στατικά (static) static: Η λέξη κλειδί static δηλώνει ότι μία μέθοδος ή μία μεταβλητή είναι στατική Java Βασικά Στοιχεία της γλώσσας Java 20

Μέλη Κλάσεων και Αντικειμένων (2) Μέλη Αντικειμένων Ανήκουν στα στιγμιότυπα της κλάσης: Οι μέθοδοι και οι μεταβλητές ενός αντικειμένου είναι συνδεδεμένες με το συγκεκριμένο αντικείμενο (στιγμιότυπο) της κλάσης Ένα στιγμιότυπο για κάθε στιγμιότυπο της κλάσης: Κάθε νέο στιγμιότυπο μιας κλάσης έχει τα δικά του στιγμιότυπα των μεταβλητών της κλάσης Προσπέλαση μέσω του στιγμιότυπου της κλάσης: Η προσπέλαση των μεθόδων και των μεταβλητών ενός αντικειμένου γίνεται μέσω του συγκεκριμένου αντικειμένου Java Βασικά Στοιχεία της γλώσσας Java 21

Boxing - Unboxing Για κάθε τύπο δεδομένων που δεν είναι κλάση (boolean, int, ) υπάρχει μια κατάλληλη κλάση η οποία μπορεί να «πακετάρει» μια αντίστοιχη τιμή int Integer boolean Boolean double - Double Java Βασικά Στοιχεία της γλώσσας Java 22