Μια Γεύση από 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 ημερών του Leanpub 100%
Εντός 60 ημερών από την αγορά μπορείτε να λάβετε επιστροφή χρημάτων 100% για οποιαδήποτε αγορά από το Leanpub, με δύο κλικ.
Δείτε πλήρεις όρους
Κερδίστε $8 με αγορά $10 και $16 με αγορά $20
Πληρώνουμε 80% δικαιώματα για αγορές $7,99 ή περισσότερα και 80% δικαιώματα μείον σταθερή χρέωση 50 σεντ για αγορές μεταξύ $0,99 και $7,98. Κερδίζετε $8 σε πώληση $10 και $16 σε πώληση $20. Έτσι, εάν πουλήσουμε 5000 αντίγραφα του βιβλίου σας που δεν επιστρέφονται για $20, θα κερδίσετε $80,000.
(Ναι, κάποιοι συγγραφείς έχουν ήδη κερδίσει πολύ περισσότερα από αυτό στο Leanpub.)
Στην πραγματικότητα, οι συγγραφείς έχουν κερδίσειπάνω από 13 εκατομμύρια δολάρια γράφοντας, δημοσιεύοντας και πουλώντας στο Leanpub.
Μάθετε περισσότερα για τη συγγραφή στο Leanpub
Δωρεάν Ενημερώσεις. Χωρίς DRM.
Αν αγοράσετε ένα βιβλίο από το Leanpub, λαμβάνετε δωρεάν ενημερώσεις για όσο χρόνο ο συγγραφέας ενημερώνει το βιβλίο! Πολλοί συγγραφείς χρησιμοποιούν το Leanpub για να δημοσιεύσουν τα βιβλία τους ενώ τα γράφουν. Όλοι οι αναγνώστες λαμβάνουν δωρεάν ενημερώσεις, ανεξάρτητα από το πότε αγόρασαν το βιβλίο ή πόσο πλήρωσαν (συμπεριλαμβανομένου του δωρεάν).
Τα περισσότερα βιβλία του Leanpub είναι διαθέσιμα σε μορφή PDF (για υπολογιστές) και EPUB (για κινητά, tablets και Kindle). Οι μορφές που περιλαμβάνει ένα βιβλίο εμφανίζονται στην επάνω δεξιά γωνία αυτής της σελίδας.
Τέλος, τα βιβλία του Leanpub δεν έχουν καμία προστασία αντιγραφής DRM, οπότε μπορείτε εύκολα να τα διαβάσετε σε οποιαδήποτε συμβατή συσκευή.
Μάθετε περισσότερα για τις μορφές ηλεκτρονικών βιβλίων του Leanpub και πού να τα διαβάσετε