Μια Γεύση από Java
Μια Γεύση από Java
Σχετικά με το Βιβλίο
Η γλώσσα προγραμματισμού Java είναι σήμερα από τις πιο δημοφιλής. Η εκμάθηση της συχνά στηρίζεται σε βιβλία τα οποία είναι πολύ μεγάλα σε έκταση κάτι που ίσως δεν είναι ελκυστικό για μια πρώτη επαφή με τη γλώσσα. Το παρόν βιβλίο είναι ένα σύντομο εγχειρίδιο της Java το οποίο έχει σκοπό να δώσει στον αναγνώστη μια γεύση της γλώσσας, δηλαδή να περιγράψει τα πιο σημαντικά της στοιχεία, σύντομα και περιεκτικά (αρκεί ίσως ένα απόγευμα μελέτης). Το βιβλίο συστήνεται σε εκείνους που δεν έχουν καμία γνώση της γλώσσας αλλά θα ήθελαν γρήγορα να μπουν στην ουσία. Το βιβλίο περιλαμβάνει και παράδειγμα ανάπτυξης εφαρμογών Android με χρήση της Java.
Για τους φοιτητές σχετικών μαθημάτων της τριτοβάθμιας εκπαίδευσης στην πληροφορική, το παρόν βιβλίο προτείνεται ως ανάγνωσμα για τις πρώτες δύο εβδομάδες του εξαμήνου, ευελπιστώντας ότι η ανάγνωσή του θα τους βοηθήσει να «εγκλιματιστούν» πιο γρήγορα και να πάρουν μια γεύση για τα θέματα με τα οποία θα καταπιαστούν (με αναλυτικότερο τρόπο) κατά τη διάρκεια του εξαμήνου. Το βιβλίο έχει λειτουργήσει επικουρικά στις διδασκαλίες σχετικού μαθήματος στο Τμήμα Επιστήμης Υπολογιστών του Πανεπιστημίου Κρήτης από το 2009.
Το βιβλίο σε καμία περίπτωση δεν υποκαθιστά τους διαθέσιμους διαδικτυακούς πόρους για τη γλώσσα Java, ούτε τα αναλυτικά βιβλία για την εκμάθησή της.
ISBN 978-960-93-8505-3
Πίνακας Περιεχομένων
ΜΙΑ ΓΕΥΣΗ ΑΠΟ … JAVA 1
1 ΠΡΟΛΟΓΟΣ 7
1.1 ΣΚΟΠΟΣ ΚΑΙ ΡΟΛΟΣ ΤΟΥ ΒΙΒΛΙΟΥ 7
1.2 ΤΟ ΙΣΤΟΡΙΚΟ ΚΑΙ ΤΟ ΜΕΛΛΟΝ ΤΟΥ ΒΙΒΛΙΟΥ 7
1.3 ΕΥΧΑΡΙΣΤΙΕΣ 8
1.4 ΛΙΓΑ ΛΟΓΙΑ ΓΙΑ ΤΟΝ ΣΥΓΓΡΑΦΕΑ 8
2 ΕΙΣΑΓΩΓΗ ΣΤΗ ΓΛΩΣΣΑ 9
3 ΣΥΓΓΡΑΦΗ, ΜΕΤΑΓΛΩΤΤΙΣΗ ΚΑΙ ΕΚΤΕΛΕΣΗ ΠΡΟΓΡΑΜΜΑΤΩΝ 9
3.1 H ΒΙΒΛΙΟΘΗΚΗ ΤΗΣ JAVA (JAVA API) 10
3.2 ΤΟ IDE ECLIPSE 11
3.2.1 ΤΟ ΠΕΡΙΒΑΛΛΟΝ 11
3.2.2 ΝΕΟ ΕΡΓΟ 12
3.2.3 ΝΕΑ ΚΛΑΣΗ 13
3.2.4 ΠΡΟΓΡΑΜΜΑΤΙΖΟΝΤΑΣ 14
3.2.5 ΕΚΤΕΛΕΣΗ ΕΦΑΡΜΟΓΗΣ 16
3.2.6 ΕΙΣΑΓΩΓΗ ΕΡΓΟΥ 16
3.2.7 ΠΛΗΡΟΦΟΡΙΕΣ 17
4 ΤΑ ΒΑΣΙΚΑ ΣΤΟΙΧΕΙΑ ΤΗΣ JAVA 17
4.1 ΣΧΟΛΙΑ 17
4.2 ΒΑΣΙΚΟΙ ΤΥΠΟΙ ΔΕΔΟΜΕΝΩΝ 18
4.3 ΔΗΛΩΣΗ ΜΕΤΑΒΛΗΤΩΝ 18
4.4 ΔΗΛΩΣΗ ΣΤΑΘΕΡΩΝ 19
4.5 ΠΙΝΑΚΕΣ 19
4.6 ΤΕΛΕΣΤΕΣ 19
5 ΡΟΗ ΠΡΟΓΡΑΜΜΑΤΟΣ 20
5.1 ΔΟΜΕΣ ΕΛΕΓΧΟΥ 20
5.1.1 IF ELSE 20
5.1.2 SWITCH 21
5.2 ΔΟΜΕΣ ΕΠΑΝΑΛΗΨΗΣ 22
5.2.1 WHILE 22
5.2.2 DO WHILE 22
5.2.3 FOR 22 4
6 ΚΛΑΣΕΙΣ ΚΑΙ ΑΝΤΙΚΕΙΜΕΝΑ 23
6.1 ΜΕΘΟΔΟΙ 24
6.2 ΚΛΗΣΗ ΜΕΘΟΔΩΝ ΚΑΙ ΠΕΡΑΣΜΑ ΠΑΡΑΜΕΤΡΩΝ 27
7 ΟΡΓΑΝΩΣΗ ΚΛΑΣΕΩΝ 29
7.1 ΠΑΚΕΤΑ 29
7.2 ΠΕΡΙΟΡΙΣΜΟΙ ΠΡΟΣΠΕΛΑΣΗΣ 30
7.3 ΚΛΗΡΟΝΟΜΙΚΟΤΗΤΑ (INHERITANCE) 32
7.4 ΔΙΕΠΑΦΕΣ (INTERFACES) 36
7.5 ΑΦΗΡΗΜΕΝΕΣ ΚΛΑΣΕΙΣ 39
7.6 ΠΟΛΥΜΟΡΦΙΣΜΟΣ (POLYMORPHISM) 40
7.6.1 ΥΠΕΡΦΟΡΤΩΣΗ (OVERLOADING) 40
7.6.2 ΥΠΟΣΚΕΛΙΣΜΟΣ (OVERRIDING) 41
7.6.3 ΥΠΟΣΚΕΛΙΣΜΟΣ (OVERRIDING) ΚΑΙ ΕΠΙΣΚΙΑΣΗ (SHADOWING) 42
7.7 ΕΝΘΥΛΑΚΩΣΗ (ENCAPSULATION) 43
7.8 ΕΡΩΤΗΜΑΤΑ ΚΑΤΑΝΟΗΣΗΣ 44
8 ΣΥΜΒΟΛΟΣΕΙΡΕΣ (STRINGS) 45
9 ΕΞΑΙΡΕΣΕΙΣ (EXCEPTIONS) 46
10 ADTS (ABSTRACT DATA TYPES) 50
10.1 ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΒΑΣΙΣΜΕΝΟΣ ΣΕ ΣΥΜΒΟΛΑΙΑ (CONTRACT-BASED PROGRAMMING) 51
10.2 ΣΥΜΒΟΛΑΙΑ ΚΑΙ ΕΞΕΙΔΙΚΕΥΣΗ 52
11 ΔΙΑΧΕΙΡΙΣΗ ΣΥΛΛΟΓΩΝ ΜΕ ΤΟ JAVA COLLECTION FRAMEWORK 54
11.1 ΣΥΓΚΡΙΣΗ ΚΑΙ ΤΑΞΙΝΟΜΗΣΗ ΑΝΤΙΚΕΙΜΕΝΩΝ 57
12 ΑΡΧΕΙΑ (FILE) 59
13 ΠΑΡΑΜΕΤΡΙΚΟΙ ΤΥΠΟΙ (GENERICS) 60
14 ΕΜΦΩΛΕΥΜΕΝΕΣ Η ΕΣΩΤΕΡΙΚΕΣ ΚΛΑΣΕΙΣ (INNER CLASSES) 61
15 ΣΤΟΧΑΣΜΟΣ (REFLECTION) 63
16 ΓΡΑΦΙΚΕΣ ΔΙΕΠΑΦΕΣ ΧΡΗΣΤΗ ΜΕ ΤΟ SWING 64
16.1 Η ΚΛΑΣΗ COMPONENT 65
16.2 ΥΠΟΔΟΧΕΙΣ-ΠΛΑΙΣΙΑ (JFRAMES) 66
16.3 ΣΥΣΤΑΤΙΚΑ (COMPONENTS) 67
16.4 ΔΙΑΤΑΞΗ ΣΥΣΤΑΤΙΚΩΝ (LAYOUTS) 69 5
16.5 ΤΑΜΠΛΟ/ΤΟΜΕΙΣ (JPANEL) 72
16.6 ΑΚΡΟΑΤΕΣ ΣΥΜΒΑΝΤΩΝ (ACTION LISTENERS) 72
16.7 ΜΙΚΡΟΕΦΑΡΜΟΓΕΣ (APPLETS) ΤΗΣ JAVA 73
17 ΠΟΛΥΝΗΜΑΤΙΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 75
18 ΤΑ ΝΕΑ ΣΤΟΙΧΕΙΑ ΤΗΣ JAVA 8 77
18.1 ΔΙΕΠΑΦΕΣ 77
18.2 ΣΥΝΑΡΤΗΣΙΑΚΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ 79
18.3 ΛΑΜΔΑ ΕΚΦΡΑΣΕΙΣ: ΕΙΣΑΓΩΓΗ 79
18.4 DEFAULT ΜΕΘΟΔΟΙ ΤΗΣ ΒΙΒΛΙΟΘΗΚΗΣ 81
18.4.1 ΤΑΞΙΝΟΜΗΣΗ 82
18.4.2 ΑΚΡΟΑΤΕΣ ΣΥΜΒΑΝΤΩΝ 82
18.5 ΑΝΑΦΟΡΕΣ ΣΥΝΑΡΤΗΣΕΩΝ 82
18.6 ΠΡΟΚΑΘΟΡΙΣΜΕΝΕΣ ΣΥΝΑΡΤΗΣΙΑΚΕΣ ΔΙΕΠΑΦΕΣ ΤΟΥ JAVA.UTIL.FUNCTIONS 83
18.7 ΡΟΕΣ (STREAMS) 83
18.7.1 ΠΑΡΑΛΛΗΛΙΑ 87
18.7.2 ΕΠΙΛΟΓΟΣ ΓΙΑ ΡΟΕΣ 88
19 ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ ANDROID 88
19.1 ΕΙΣΑΓΩΓΗ 88
19.2 ΑΝΑΠΤΥΞΗ ΕΦΑΡΜΟΓΩΝ 89
19.3 Η ΤΕΛΙΚΗ ΦΥΣΙΚΗ ΥΠΟΣΤΑΣΗ ΜΙΑΣ ΕΦΑΡΜΟΓΗΣ 91
19.4 Η ΛΟΓΙΚΗ ΔΟΜΗ ΜΙΑΣ ΕΦΑΡΜΟΓΗΣ 92
19.5 ΤΡΕΧΟΝ ΠΑΡΑΔΕΙΓΜΑ 93
19.6 ΤΟ ΑΡΧΕΙΟ ANDROIDMANIFEST.XML 94
19.7 Ο ΦΑΚΕΛΟΣ /JAVA 94
19.8 Ο ΦΑΚΕΛΟΣ /RES 95
19.9 ΤΟ ΑΡΧΕΙΟ /RES/VALUES/STRINGS.XML 96
19.10 ΤΟ ΑΡΧΕΙΟ /RES/VALUES/STYLES.XML 96
19.11 Ο ΦΑΚΕΛΟΣ /RES/DRAWABLE 97
19.12 Ο ΦΑΚΕΛΟΣ /RES/LAYOUT 98
19.13 ΤΑ ΑΡΧΕΙΑ /JAVA/*ACTIVITY.JAVA 100
20 ΑΝΤΙΚΕΙΜΕΝΟΣΤΕΦΗΣ ΑΝΑΛΥΣΗ ΚΑΙ ΣΧΕΔΙΑΣΗ ΣΥΣΤΗΜΑΤΩΝ 105
20.1 ΣΚΟΠΟΣ 105
20.2 ΔΙΑΔΙΚΑΣΙΑ ΑΝΑΛΥΣΗΣ ΚΑΙ ΣΧΕΔΙΑΣΜΟΥ 105
20.3 ΔΙΑΓΡΑΜΜΑΤΙΚΗ ΓΛΩΣΣΑ ΜΟΝΤΕΛΟΠΟΙΗΣΗΣ 105
20.4 ΣΥΓΚΕΚΡΙΜΕΝΟ ΠΑΡΑΔΕΙΓΜΑ 106
20.4.1 (Ι) ΣΤΟΧΟΙ ΚΑΙ ΠΡΟΣΔΟΚΙΕΣ ΠΕΛΑΤΗ 106
20.4.2 (ΙΙ) ΔΙΑΓΡΑΜΜΑ ΠΕΡΙΠΤΩΣΕΩΝ ΧΡΗΣΗΣ (USE CASE DIAGRAM) 106
20.4.3 (ΙΙΙ) ΜΑΚΕΤΑ ΓΡΑΦΙΚΗΣ ΔΙΕΠΑΦΗΣ ΧΡΗΣΗΣ 107
20.4.4 (IV) ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΣΥΣΤΗΜΑΤΟΣ 108
20.4.5 (V) ΔΙΑΓΡΑΜΜΑ ΚΛΑΣΕΩΝ 108
20.4.6 (VI) ΑΚΟΛΟΥΘΙΑΚΑ ΔΙΑΓΡΑΜΜΑΤΑ ΚΑΙ ΔΙΑΓΡΑΜΜΑΤΑ ΚΑΤΑΣΤΑΣΕΩΝ 110
20.4.7 ΤΙ ΔΕΝ ΠΕΡΙΓΡΑΨΑΜΕ 112 6
21 ΘΕΜΑΤΑ ΜΗΧΑΝΟΛΟΓΙΑΣ ΤΗΣ JAVA 112
21.1 ΕΠΙΣΗΜΕΙΩΣΕΙΣ (JAVA ANNOTATIONS) 112
21.2 ΔΟΚΙΜΕΣ (TESTING) 113
21.3 ΈΝΕΣΗ ΕΞΑΡΤΗΣΕΩΝ (DEPENDENCY INJECTION) 115
21.4 ΟΙΚΟΔΟΜΗΣΗ ΛΟΓΙΣΜΙΚΟΥ ΚΑΙ ΔΙΑΧΕΙΡΙΣΗ ΤΩΝ ΣΧΕΤΙΚΩΝ ΕΞΑΡΤΗΣΕΩΝ (MAVEN, GRADLE) 116
21.5 ΣΥΣΤΗΜΑΤΑ ΓΙΑ ΣΥΝΕΡΓΑΤΙΚΟ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟ, ΕΚΔΟΣΕΙΣ ΛΟΓΙΣΜΙΚΟΥ 118
22 ΕΠΙΛΟΓΟΣ 118
23 ΤΙ ΕΙΠΑΝ ΑΛΛΟΙ ΓΙΑ ΤΟ … ΒΙΒΛΙΟ 118
Η Εγγύηση 60 Ημερών 100% Ικανοποίησης του Leanpub
Εντός 60 ημερών από την αγορά μπορείτε να λάβετε 100% επιστροφή χρημάτων για οποιαδήποτε αγορά στο Leanpub, με δύο κλικ.
Τεχνικά, αυτό είναι ριψοκίνδυνο για εμάς, αφού θα έχετε τα αρχεία του βιβλίου ή του μαθήματος ούτως ή άλλως. Αλλά είμαστε τόσο σίγουροι για τα προϊόντα και τις υπηρεσίες μας, καθώς και για τους συγγραφείς και τους αναγνώστες μας, που προσφέρουμε με χαρά πλήρη εγγύηση επιστροφής χρημάτων για όλα όσα πωλούμε.
Μπορείτε να ανακαλύψετε πόσο καλό είναι κάτι μόνο δοκιμάζοντάς το, και χάρη στην εγγύηση 100% επιστροφής χρημάτων, δεν υπάρχει κυριολεκτικά κανένας κίνδυνος!
Επομένως, δεν υπάρχει λόγος να μην κάνετε κλικ στο κουμπί Προσθήκη στο Καλάθι, σωστά;
Δείτε τους πλήρεις όρους...
Κερδίστε 8$ σε αγορά 10$ και 16$ σε αγορά 20$
Πληρώνουμε 80% δικαιώματα για αγορές 7,99$ ή περισσότερο, και 80% δικαιώματα μείον πάγιο τέλος 50 λεπτών για αγορές μεταξύ 0,99$ και 7,98$. Κερδίζετε 8$ σε πώληση 10$, και 16$ σε πώληση 20$. Έτσι, αν πουλήσουμε 5000 μη επιστρεφόμενα αντίτυπα του βιβλίου σας για 20$, θα κερδίσετε 80.000$.
(Ναι, μερικοί συγγραφείς έχουν ήδη κερδίσει πολύ περισσότερα στο Leanpub.)
Στην πραγματικότητα, οι συγγραφείς έχουν κερδίσειπάνω από 14 εκατομμύρια δολάρια γράφοντας, εκδίδοντας και πουλώντας στο Leanpub.
Μάθετε περισσότερα για τη συγγραφή στο Leanpub
Δωρεάν Ενημερώσεις. Χωρίς DRM.
Αν αγοράσετε ένα βιβλίο Leanpub, λαμβάνετε δωρεάν ενημερώσεις για όσο διάστημα ο συγγραφέας ενημερώνει το βιβλίο! Πολλοί συγγραφείς χρησιμοποιούν το Leanpub για να δημοσιεύσουν τα βιβλία τους ενώ τα γράφουν. Όλοι οι αναγνώστες λαμβάνουν δωρεάν ενημερώσεις, ανεξάρτητα από το πότε αγόρασαν το βιβλίο ή πόσα πλήρωσαν (συμπεριλαμβανομένων των δωρεάν).
Τα περισσότερα βιβλία του Leanpub είναι διαθέσιμα σε PDF (για υπολογιστές) και EPUB (για κινητά, tablet και Kindle). Οι μορφές που περιλαμβάνει ένα βιβλίο εμφανίζονται στην πάνω δεξιά γωνία αυτής της σελίδας.
Τέλος, τα βιβλία του Leanpub δεν έχουν καμία ανόητη προστασία αντιγραφής DRM, οπότε μπορείτε εύκολα να τα διαβάσετε σε οποιαδήποτε υποστηριζόμενη συσκευή.
Μάθετε περισσότερα για τις μορφές ebook του Leanpub και πού να τις διαβάσετε