Βασικά Στοιχεία της Παύλος Εφραιμίδης 1 Βασικά Στοιχεία της γλώσσας
Τύποι Δεδομένων Η έχει δύο κατηγορίες τύπων δεδομένων: πρωτογενείς (primitive) iti τύπους δεδομένων δδ αναφορές 2 Βασικά Στοιχεία της γλώσσας
Πρωτογενείς (Primitive) Τύποι Δεδομένων Δδ Λέξη Κλειδί Περιγραφή Μέγεθος/Μορφή (Ακέραιοι) byte ακέραιος μεγέθους ενός byte 8-bit two's complement short μικρός (short) ακέραιος 16-bit two's complement int ακέραιος 32-bit two's complement long μεγάλος (long) ακέραιος 64-bit two's complement (Πραγματικοί) float Απλής ακρίβειας αριθ. κιν. υποδιαστ. 32-bit IEEE 754 double Διπλής ακρίβειας ρβ αριθ. κιν. υποδιαστ. 64-bit IEEE 754 (Άλλοι Τύποι) char Ένας χαρακτήρας 16-bit Unicode character 3 boolean Μια boolean τιμή (true ή false) true ή false Βασικά Στοιχεία της γλώσσας
Παραδείγματα Τιμών Πρωτογενών Τύπων Δεδομένων Τιμή Τύπος Τιμή Τύπος (Literal) Δεδομένων (Literal) Δεδομένων 178 int 26.77e3 double 8864L long c char 37.266 double true boolean 37.266D double false boolean 87.363F float Βασικά Στοιχεία της γλώσσας 4
τελεστές Αριθμητικοί τελεστές: +, -, *, /, %, ++, -- Τελεστές σύγκρισης: <, >, >=, <=, ==,!= Λογικοί τελεστές: &, &&,,,!, ^ (λογικό xor) Τελεστές Ολίσθησης: <<, >>, >>> 5 Βασικά Στοιχεία της γλώσσας
Τελεστές εκχώρησης ης τιμής = += -= *= /= %= &= ^= <<= >>= >>>= Παραδείγματα: op1 += op2; // op1 = op1 + op2; op1 /= op2; // op1 = op1 / op2; 6 Βασικά Στοιχεία της γλώσσας
Eιδικοί τελεστές?: []. () (type) new instanceof 7 Βασικά Στοιχεία της γλώσσας
Δομές Ελέγχου Ροής while() { } do { } while(); for ( ; ; ; ); if () then { } else { }; switch () { case 1: ; break; } 8 Βασικά Στοιχεία της γλώσσας
Κλάσεις και Αντικείμενα Αντικείμενο: Το στιγμιότυπο μιας κλάσης 9 Βασικά Στοιχεία της γλώσσας
αυτόματες μεταβλητές Οι βασικοί τύποι δεδομένων: boolean, int, long, float, double, char Όλες οι άλλες μεταβλητές είναι αντικείμενα Πρέπει να δώσουμε αρχική τιμή σε κάθε αυτόματη μεταβλητή 10 Βασικά Στοιχεία της γλώσσας
final μεταβλητές 11 Η τιμή μιας final μεταβλητής δεν επιτρέπεται να μεταβληθεί. Οι final μεταβλητές ουσιαστικά είναι σταθερές ρς final int afinalvar = 0; Εάν μια final μεταβλητή δηλωθεί αλλά δεν αρχικοποιηθεί ονομάζεται blank final. final int blankfinal;... blankfinal = 0; Βασικά Στοιχεία της γλώσσας
Block 12 Μία ή περισσότερες ρ εντολές μεταξύ 2 αγκυλών { ; ; } Παράδειγμα: if (i < 10) { <εντολές> } else { <εντολές> } Βlocks Βασικά Στοιχεία της γλώσσας
Εμβέλεια Ονομάτων 13 Βασικά Στοιχεία της γλώσσας
Δυναμική Δημιουργία Αντικειμένων Στην όλα τα αντικείμενα δημιουργούνται δυναμικά με τον τελεστή new: double[] D = new double[10]; 14 Βασικά Στοιχεία της γλώσσας
Αναφορές - Αντικείμενα Προσπέλαση των αντικειμένων γίνεται μέσω αναφορών 15 Βασικά Στοιχεία της γλώσσας
Αποκομιδή Απορριμμάτων (Garbage Collection) Η υλοποιεί αυτόματη διαχείριση μνήμης Τα προγράμματα δημιουργούν δυναμικά αντικείμενα. Όταν τα αντικείμενα δεν χρησιμοποιούνται πλέον το περιβάλλον της αποδεσμεύει αυτόματα τα αντικείμενα αυτά Η διαδικασία αποδέσμευσης της μνήμης ονομάζεται Αποκομιδή Απορριμμάτων (Garbage Collection) 16 Βασικά Στοιχεία της γλώσσας
package package είναι ένας μηχανισμός της java για την οργάνωση κλάσεων σε χώρους ονομάτων τα java packages μπορούν να αποθηκευτούν σε συμπιεσμένα αρχεία τύπου jar το package δηλώνεται στην αρχή του πηγαίου κώδικα της java πχ.: package dsalg.lab02 17 Βασικά Στοιχεία της γλώσσας
χώροι ονομάτων import java.util.random; import java.util.*; 18 Βασικά Στοιχεία της γλώσσας
Μέλη Κλάσεων και Αντικειμένων (1) Μέλη Κλάσεων Ανήκουν στην κλάση: Οι μέθοδοι (class methods) και οι μεταβλητές μιας κλάσης (class variables) είναι συνδεδεμένες με μια συγκεκριμένη κλάση Ένα στιγμιότυπο: Για κάθε μεταβλητή που είναι μέλος μιας κλάσης δημιουργείται ένα ακριβώς στιγμιότυπο της μεταβλητής όταν φορτώνεται η κλάση στο σύστημα, ανεξάρτητα από το πόσα στιγμιότυπα (αντικείμενα) της κλάσης θα δημιουργηθούν Προσπέλαση μέσω της κλάσης: Η προσπέλαση των μελών μιας κλάσης γίνεται μέσω της κλάσης 19 Βασικά Στοιχεία της γλώσσας
Μέλη Κλάσεων και Αντικειμένων (2) Μέλη Αντικειμένων Ανήκουν στα στιγμιότυπα της κλάσης: Οι μέθοδοι και οι μεταβλητές ενός αντικειμένου είναι συνδεδεμένες με το συγκεκριμένο αντικείμενο (στιγμιότυπο) της κλάσης Ένα στιγμιότυπο για κάθε στιγμιότυπο της κλάσης: Κάθε νέο στιγμιότυπο γμό μιας μαςκλάσης έχει τα δικά του στιγμιότυπα των μεταβλητών της κλάσης Προσπέλαση μέσω του στιγμιότυπου της κλάσης: Η προσπέλαση των μεθόδων και των μεταβλητών ενός αντικειμένου γίνεται μέσω του συγκεκριμένου αντικειμένου 20 Βασικά Στοιχεία της γλώσσας
Στατικά Μέλη Μέλη που ανήκουν στην κλάση και όχι σε στιγμιότυπα ονομάζονται και στατικά (static) static: Η λέξη κλειδί static δηλώνει ότι μία μέθοδος ή μία μεταβλητή είναι στατική 21 Βασικά Στοιχεία της γλώσσας
Boxing - Unboxing Για κάθε τύπο δεδομένων που δεν είναι κλάση (boolean, int, ) υπάρχει μια κατάλληλη κλάση η οποία μπορεί να «πακετάρει» μια αντίστοιχη τιμή int Integer boolean Boolean double - Double 22 Βασικά Στοιχεία της γλώσσας
Πηγές/Αναφορές ς The Tutorial, www.sun.com 23 Βασικές Έννοιες