Εισαγωγή στον Προγραµµατισµό, Αντώνιος Συµβώνης, ΣΕΜΦΕ, ΕΜΠ,, Slide 6

Σχετικά έγγραφα
Εισαγωγή στον Αντικειμενοστρεφή Προγραμματισμό Διάλεξη #2

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

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

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

Εισαγωγή στον Προγραµµατισµό, Αντώνιος Συµβώνης, ΣΕΜΦΕ, ΕΜΠ,, Slide 6

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

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

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

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

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

Εισαγωγή στον Αντικειμενοστρεφή Προγραμματισμό Διάλεξη #3

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 26/2/2008

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

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

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

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

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

class object Database Database Item Item [sub-typing and polymorphism] MusicCD Video MusicCD Video

Λογισµικό (Software SW) Γλώσσες

Κλάσεις και αντικείμενα #include <iostream.h<

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

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

Προγραμματισμός Ι. Κλάσεις και Αντικείμενα. Δημήτρης Μιχαήλ. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο

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

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

Δομημένος Προγραμματισμός

Εισαγωγή στον Αντικειμενοστρέφή Προγραμματισμό Διάλεξη #12

Εισαγωγή στον Αντικειμενοστρέφή Προγραμματισμό Διάλεξη #13

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

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

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

Wrapper Classes, Abstract Classes and Interfaces

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

Εαρινό. Ύλη εργαστηρίου, Ασκήσεις Java

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

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

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

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

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Δημιουργία Κλάσεων και Αντικειμένων Tοπικές μεταβλητές To αντικείμενο this Accessor, Mutator μέθοδοι

Αρχές Τεχνολογίας Λογισμικού Εργαστήριο

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

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

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

ΚΑΤΑΣΚΕΥΑΣΤΕΣ ΑΝΤΙΓΡΑΦΗΣ

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

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

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

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

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

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

ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός. Περισσότερα για τις Κλάσεις, τα Αντικείμενα και τις Μεθόδους

Ορισµός Νήµα (thread) είναι µια ακολουθιακή ροή ελέγχου (δηλ. κάτι που έχει αρχή, ακολουθία εντολών και τέλος) σ ένα

Μέθοδοι. Μέθοδοι ηµιουργοί, Υπερφόρτωση και Υπέρβαση Μεθόδων

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

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

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

Το πρόγραμμα HelloWorld.java. HelloWorld. Κλάσεις και Αντικείμενα (2) Ορισμός μιας Κλάσης (1) Παύλος Εφραιμίδης pefraimi <at> ee.duth.

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

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

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

Προγραμματισμός Υπολογιστών με C++ Φύλλο Διαγωνίσματος Ακαδημαϊκό εξάμηνο: Χειμερινό

Η βασική συνάρτηση προγράμματος main()

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

Ηβασικήσυνάρτηση προγράμματος main()

4 Συλλογές Αντικειμένων

HY-252 Αντικειμενοστραφής Προγραμματισμός. Χειμερινό Εξάμηνο 2012 Διδάσκων: Χριστοφίδης Βασίλης. Ημερομηνία Παράδοσης: 16/11/2012


Κληρονομικότητα. Παύλος Εφραιμίδης pefraimi <at> ee.duth.gr. Java Κληρονομικότητα 1

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

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

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

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

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 4 : CLASSES

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

public void printstatement() { System.out.println("Employee: " + name + " with salary: " + salary);

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

Εισαγωγή στην Γλώσσα Προγραμματισμού Python. 12/10/16 1

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

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

ΘΕΜΑΤΑ ΕΞΕΤΑΣΕΩΝ ΟΜΑΔΑ Α

Η κατασκευή αντικειμένων της κλάσης Student μπορεί να πραγματοποιηθεί είτε στη main είτε σε οποιαδήποτε μέθοδο κλάσης:

Προγράμματα με δομή Κληρονομικότητας

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

(Διαφάνειες Νίκου Βιδάκη)

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Μέθοδοι που επιστρέφουν αντικείμενα Deep and Shallow Copies

υναµική διαχείριση µνήµης στη C++ Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: ΕΠΛ 132 Αρχές Προγραµµατισµού ΙΙ 2 είκτες

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

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

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

Εισαγωγή σε αντικειμενοστραφή concepts. Και λίγη C#

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

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

Τεχνικός Εφαρμογών Πληροφορικής

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

Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα;

Η Γλώσσα Προγραµµατισµού C++ (The C++ Programming Language)

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

Περιεχόµενα. 1 Εισαγωγή στις οµές εδοµένων 3. 2 Στοίβα (Stack) 5

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

Transcript:

Ανασκόπηση Μια εφαρµογή Java είναι ένα σύνολο από συνεργαζόµενες κλάσεις Εβδοµάδα 2: Αντικείµενα, Κλάσεις και Μέθοδοι Εισαγωγή στον Προγραµµατισµό,,, Slide 1 Εισαγωγή στον Προγραµµατισµό,,, Slide 2 Ανασκόπηση: Αντικείµενα Τα αντικείµενα (στιγµιότυπα) δηµιουργούνται από τις κλάσεις Τα αντικείµενα έχουν µεθόδους οι οποίες µπορεί να κληθούν (εκτελεστούν) Τα αντικείµενα έχουν µια «κατάσταση» (state); Περιέχουν δεδοµένα Τα αντικείµενα µπορεί να δηµιουργήσουν νέα αντικείµενα Ανασκόπηση: Μέθοδοι Ένα αντικείµενο µπορεί να καλέσει µια µέθοδο ενός αλλού αντικειµένου Οι µέθοδοι «έχουν επιπτώσεις»: είτε αλλάζουν την κατάσταση του αντικείµενου ή επιστρέφουν πληροφορίες Οι µέθοδοι µπορεί να έχουν παραµέτρους Οι παράµετροι έχουν τύπους Εισαγωγή στον Προγραµµατισµό,,, Slide 3 Εισαγωγή στον Προγραµµατισµό,,, Slide 4 Ανασκόπηση: Κλάσεις Οι κλάσεις καθορίζουν την µορφή των αντικειµένων: προσδιορίζουν τις µεθόδους και τα πεδία δεδοµένων Οι κλάσεις ορίζονται από πηγαίο κώδικα Java «Προγραµµατισµός» είναι ο σχεδιασµός του πηγαίου κώδικα των κλάσεων Η ανατοµία µίας κλάσης class όνοµα-κλάσης [class-name] πεδία (δεδοµένα στιγµιότυπου) [fields (instance data)] κατασκευαστές [constructor(s)] µέθοδοι [methods] Εισαγωγή στον Προγραµµατισµό,,, Slide 5 Εισαγωγή στον Προγραµµατισµό,,, Slide 6

Μια κλάση class Timer private int hours; private int minutes; private int seconds; * Construct a timer object initialised to 0:00:00 public Timer() hours = 0; minutes = 0; seconds = 0; Το όνοµα της κλάσης class Timer Σύµβαση: τα ονόµατα των κλάσεων αρχίζουν από κεφαλαίο γράµµα * Return the current time of this timer. public String gettime() return hours + : + minutes + : + seconds; Το όνοµα της κλάσης είναι ένας προσδιοριστής [identifier] Ενας προσδιοριστής Java: περιέχει µόνο γράµµατα, ψηφία, και τους χαρακτήρες $ και _ [underscore] δεν αρχίζει από ψηφίο Εισαγωγή στον Προγραµµατισµό,,, Slide 7 Εισαγωγή στον Προγραµµατισµό,,, Slide 8 Προσδιοριστές έγκυροι: λανθασµένοι: Πεδία private int hours; private int minutes; private int seconds; number x98 howmany NUMBER_OF_POINTS $yes$ _$$S_$_ number of points 99x birth.year ARRAY-SIZE Ένας προσδιοριστής ήλωση πεδίων: µετατροπέας-προσπέλασης τύπος όνοµα; private Ο τύπος της τιµής που µπορεί να λάβει το πεδίο Σύµβαση: τα ονόµατα πεδίων αρχίζουν µε πεζό γράµµα Εισαγωγή στον Προγραµµατισµό,,, Slide 9 Εισαγωγή στον Προγραµµατισµό,,, Slide 10 Πεδία: ένα παράδειγµα Αντικείµενο της κλάσης timer: hours minutes seconds Μέθοδοι Σχόλιο που αναφέρεται στη χρήση/λειτουργία της µεθόδου * σχόλιο σχετικό µε τη µέθοδο * Returns the current time of this timer. public String gettime() return hours + : + minutes + : + seconds; Ο τύπος της τιµής που επιστρέφει η µέθοδος µετατροπέας-προσπέλασης τύπος-αποτελέσµατος όνοµα (παράµετροι) σώµα [body] public για τις περισσότερες µεθόδους προσδιοριστής Υλοποίηση της µεθόδου Σύµβαση: τα ονόµατα των µεθόδων αρχίζουν µε πεζό γράµµα Εισαγωγή στον Προγραµµατισµό,,, Slide 11 Εισαγωγή στον Προγραµµατισµό,,, Slide 12

Μέθοδοι : ένα παράδειγµα Επίδειξη: ανάπτυξη µια κλάσης Αντικείµενο της κλάσης timer: gettime() gettime() 12:45:07 Εισαγωγή στον Προγραµµατισµό,,, Slide 13 Εισαγωγή στον Προγραµµατισµό,,, Slide 14 Κατασκευαστές (Constructors) Ονόµατα πεδίων class Timer * Construct a timer object * initialised to 0:00:00 public Timer() hours = 0; minutes = 0; seconds = 0; Ο κατασκευαστής είναι µια ειδική µέθοδος που εκτελείται όταν δηµιουργείται ένα αντικείµενο. Το όνοµα της µεθόδου-κατασκευαστή είναι το ίδιο µε το όνοµα της κλάσης. Ένας κατασκευαστής δεν έχει τύποαποτελέσµατος. Σκοπός του κατασκευαστή είναι η αρχικοποίηση του αντικειµένου σε µια έγκυρη κατάσταση. Τα ονόµατα των πεδίων πρέπει να «έχουν νόηµα» καλά: yearofbirth numberofseats totaltime άσχηµα: yb s number Εισαγωγή στον Προγραµµατισµό,,, Slide 15 Εισαγωγή στον Προγραµµατισµό,,, Slide 16 Μέθοδοι Ο τύπος-αποτελέσµατος της µεθόδου public String gettime() return hours + : + minutes + : + seconds; Υπογραφή [signature] public String getname() Επιστρέφει κείµενο εν επιστρέφει τίποτε public int size() Επιστρέφει έναν αριθµό σώµα public void print() Το void είναι ένας ειδικός τύπος που υποδηλώνει ότι τίποτε δεν επιστρέφεται. Εισαγωγή στον Προγραµµατισµό,,, Slide 17 Εισαγωγή στον Προγραµµατισµό,,, Slide 18

Παράµετροι public int add(int value) public void changenames(string firstname, String lastname) Η λίστα των παραµέτρων αποτελείται από ορισµούς παραµέτρων που χωρίζονται µεταξύ τους µε κόµµα «,». Κάθε ορισµός παραµέτρου προσδιορίζει τον τύπο και το όνοµα της παραµέτρου. Εισαγωγή στον Προγραµµατισµό,,, Slide 19 Το σώµα της µεθόδου public int add(int value) εντολή 1; εντολή 2; εντολή 3; εντολή 4; Το σώµα της µεθόδου αποτελείται από µια ακολουθία εντολών. Κάθε εντολή τερµατίζεται µε ένα ερωτηµατικό «;». Εισαγωγή στον Προγραµµατισµό,,, Slide 20 Εντολές (statements) Καταχώρηση Οι εντολές εκτελούνται σειριακά όταν κληθεί η µέθοδος. Μια καταχώρηση καταχωρεί µια τιµή σε µια µεταβλητή. Παραδείγµατα: int size; size 0 Τα είδη εντολών περιλαµβάνουν: - καταχώρηση [assignment] - εντολή επιστροφής αποτελεσµάτων (return) - κλήση µεθόδων numberofseats = 4; name = Homer ; year = newyear; size = 55; size size = 42; size 55 42 Εισαγωγή στον Προγραµµατισµό,,, Slide 21 Εισαγωγή στον Προγραµµατισµό,,, Slide 22 Η εντολή return Τελεστές (Operators) public String getname() return name; public int calculateinterest() return interest; Η εντολή return επιστρέφει µια τιµή. Η εντολή return τερµατίζει την εκτέλεση της µεθόδου. Ο τύπος της επιστρεφόµενης τιµής πρέπει να είναι ίδιος µε τον τύπο-αποτελέσµατος που δηλώθηκε στην υπογραφή της µεθόδου. int timeinseconds; int timeinminutes; timeinseconds = timeinminutes * 60; String firstname; String lastname; String fullname; fullname = firstname + " " + lastname; result = (size + 1) * 55 / width; Στο δεξιό µέρος µίας καταχώρησης µπορούµε να χρησιµοποιήσουµε εκφράσεις [expressions]. Οι εκφράσεις µπορεί να είναι υπολογισµοί που κάνουν χρήση των τελεστών της Java. Εισαγωγή στον Προγραµµατισµό,,, Slide 23 Εισαγωγή στον Προγραµµατισµό,,, Slide 24

Κατηγορίες µεθόδων Κατασκευαστές (Constructors) κατασκευαστής [constructor] µέθοδος προσπέλασης [accessor / selector (get)] Ένας κατασκευαστής δηµιουργεί και αρχικοποιεί το αντικείµενο. µέθοδος µετάλλαξης [mutator (set)] Κάθε µέθοδος πρέπει να ανήκει σε µια (και µόνο µια) κατηγορία. Εισαγωγή στον Προγραµµατισµό,,, Slide 25 Εισαγωγή στον Προγραµµατισµό,,, Slide 26 Μέθοδοι προσπέλασης (Accessors) Αναφέρονται και ως selector, get method. Μέθοδοι µετάλλαξης (Mutators) Αναφέρονται και ως "set method. Μέσω µιας µεθόδου προσπέλασης ανακτάται µέρος των δεδοµένων ενός αντικειµένου. Μια µέθοδος προσπέλασης δεν αλλάζει το αντικείµενο. Μια µέθοδος µετάλλαξης αλλάζει την κατάσταση ενός αντικειµένου. Εισαγωγή στον Προγραµµατισµό,,, Slide 27 Εισαγωγή στον Προγραµµατισµό,,, Slide 28 Σχόλια (Comments) ιαµόρφωση (Style) * Return the name of this person. public String getname() // some tricky code here return name; Σύνταξη σχολίων: // comment σχόλιο µίας γραµµής /* comment comment σχόλιο πολλαπλών γραµµών comment comment σχολια µεθόδων και κλάσεων Οι οδηγίες διαµόρφωσης κειµένου (style guidelines) περιγράφουν τρόπους διάταξης και τεκµηρίωσης του πηγαίου κώδικα. Αποσκοπούν στο να κάνουν την κατανόηση του κώδικα ευκολότερη. Αφορούν: σχόλια διάταξη (ευθυγράµµιση κειµένου, «κενά») ονόµατα µεταβλητών / κλάσεων / µεθόδων / Εισαγωγή στον Προγραµµατισµό,,, Slide 29 Εισαγωγή στον Προγραµµατισµό,,, Slide 30

Οι υπολογιστές και οι χρήστες τους Το ερώτηµα: Με ποιον τρόπο ένας υπολογιστής κατανοεί τα προγράµµατα µας; Οι υπολογιστές χρησιµοποιούν τη γλώσσα µηχανής; δυαδικό κώδικα (binary code) Η Java είναι µια γλώσσα «υψηλού επιπέδου» (µια γλώσσα σχεδιασµένη για ανθρώπους) class Person? 00110011 10010110 00001101 CPU Εισαγωγή στον Προγραµµατισµό,,, Slide 31 Εισαγωγή στον Προγραµµατισµό,,, Slide 32 Μεταγλώττιση (Compilation) Ιδεατός υπολογιστής (Virtual machine) Πηγαίος κώδικας µετάφραση Κώδικας µηχανής εκτέλεση ιερµηνέας java [interpreter] (virtual machine) Κώδικας java [bytecode] Μετάφραση Εκτέλεση υπολογιστής Πηγαίος κώδικας Κώδικας java [bytecode] (ανεξάρτητος µηχανής) υπολογιστής Εισαγωγή στον Προγραµµατισµό,,, Slide 33 Εισαγωγή στον Προγραµµατισµό,,, Slide 34