ΚΕΝΤΡΟ ΠΛΗ.ΝΕ.Τ. Ν. ΦΛΩΡΙΝΑΣ. Η Γλώσσα Προγραµµατισµού Java

Save this PDF as:
 WORD  PNG  TXT  JPG

Μέγεθος: px
Εμφάνιση ξεκινά από τη σελίδα:

Download "ΚΕΝΤΡΟ ΠΛΗ.ΝΕ.Τ. Ν. ΦΛΩΡΙΝΑΣ. Η Γλώσσα Προγραµµατισµού Java"

Transcript

1 ΚΕΝΤΡΟ ΠΛΗ.ΝΕ.Τ. Ν. ΦΛΩΡΙΝΑΣ Η Γλώσσα Προγραµµατισµού Java Εισαγωγή στη Java Η γλώσσα προγραµµατισµού Java είναι από τις δηµοφιλέστερες στο είδος της και µπορεί να χρησιµοποιηθεί τόσο για αυτόνοµες εφαρµογές όσο και για εφαρµογές που εκτελούνται αποκλειστικά στο Web και αποκαλούνται µικροεφαρµογές (applets). Τα πηγαία αρχεία (προγράµµατα) της Java µπορούµε να τα γράψουµε µ' έναν απλό επεξεργαστή κειµένου, όπως είναι το Σηµειωµατάριο (Notepad) των Windows, και πρέπει να έχουν την επέκταση.java. Η επόµενη διαδικασία είναι να µεταγλωττίσουµε (compile) το πρόγραµµα από τη γραµµή εντολών του Ms-Dos µε την εντολή javac prog01.java για να δηµιουργηθεί το αρχείο prog01.class, το οποίο µπορεί να χρησιµοποιηθεί ανεξάρτητα από λειτουργικό σύστηµα (πλατφόρµα), δηλ. το ίδιο και σε Windows και σε Macintosh και σε Unix και σε Linux. Για να εκτελέσουµε ένα µεταγλωττισµένο πρόγραµµα της Java πρέπει να χρησιµοποιήσουµε έναν διερµηνευτή (interpreter) ή µια εικονική µηχανή της Java (JVM, Java Virtual Machine), όπως αποκαλείται. Αν πρόκειται για απλή εφαρµογή της Java, µπορούµε να την εκτελέσουµε από τη γραµµή εντολών του Ms-Dos µε την εντολή java prog01, ενώ αν πρόκειται για µικροεφαρµογή (applet), θα πρέπει να χρησιµοποιήσουµε τις ετικέτες (tags) <applet> και </applet> για να προσδιορίσουµε το µεταγλωττισµένο αρχείο της Java που θα εκτελεσθεί καθώς και το πλάτος (width) και το ύψος (height) του παραθύρου όπου θα εκτελεσθεί η µικροεφαρµογή µέσα στην ιστοσελίδα. Ενας εναλλακτικός τρόπος εµφάνισης των applets είναι να χρησιµοποιήσουµε την εντολή appletviewer prog01.html από τη γραµµή εντολών του Ms-Dos, όπου prog01.html είναι η ιστοσελίδα που περιέχει το applet. Παράδειγµα 1 - Η Πρώτη Εφαρµογή σε Java Ακολουθεί η πρώτη εφαρµογή σε Java. /* Παράδειγµα 1 */ /** Είναι η εφαρµογή Hello Florina */ class HelloFlorina public static void main (String[ ] arguments)

2 System.out.println("Hello from Florina"); // Η πρώτη µας εφαρµογή σε Java Η εντολή class ορίζει το όνοµα µιας τάξης (κλάσης, class), που εδώ είναι το HelloFlorina και πρέπει να είναι υποχρεωτικά το ίδιο και µε τα ίδια πεζά και κεφαλαία γράµµατα µε το όνοµα του πηγαίου αρχείου (προγράµµατος) της Java, δηλ. HelloFlorina.java. Η συνάρτηση main() πρέπει να υπάρχει υποχρεωτικά σε κάθε απλή εφαρµογή (όχι µικροεφαρµογή) της Java και είναι η πρώτη εντολή που αναζητά η Java κατά την µεταγλώττιση και εκτέλεση της εφαρµογής. Με τις αγκύλες και, µπορούµε να χωρίσουµε τον κώδικα του προγράµµατος σε λογικές ενότητες (blocks). Για σχόλια (comments) µίας γραµµής, µπορούµε να χρησιµοποιήσουµε τους χαρακτήρες //, ενώ για σχόλια πολλών γραµµών τους χαρακτήρες /* ή /** για την αρχή του σχολίου και τους χαρακτήρες */ για το τέλος του σχολίου. Οι χαρακτήρες /** και */ αποτελούν ένα σχόλιο τεκµηρίωσης (documentation comment), που το χρησιµοποιεί το εργαλείο (tool) javadoc όταν ετοιµάζει την αυτόµατη δηµιουργία τεκµηρίωσης (documentation). Αν µεταγλωττίσουµε και εκτελέσουµε µε επιτυχία το παραπάνω πρόγραµµα, θα πρέπει να δούµε στην οθόνη το εξής µήνυµα : Hello from Florina Παράδειγµα 2 - Η Πρώτη Μικροεφαρµογή (Applet) σε Java Ακολουθεί η πρώτη µικροεφαρµογή σε Java. /* Παράδειγµα 2 */ /** Είναι η µικροεφαρµογή Hello Florina */ public class prog02 extends java.applet.applet int baros = 0; public void init()

3 baros = 100; public void paint(java.awt.graphics g) g.drawstring("το βάρος µου είναι : " + baros + " κιλά", 10, 20); Σ' αυτό το πρόγραµµα έχουµε δηλώσει µια µεταβλητή µε όνοµα baros, που είναι ακέραιος (integer), και η έξοδός µας αποτελείται από ενωµένα strings και την τιµή της µεταβλητής baros. Η µέθοδος init() καλείται µόνο µία φορά όταν εκτελείται το applet και χρησιµοποιείται για να ορίσει µεταβλητές που χρειάζονται στο applet. Η µέθοδος paint() είναι υποχρεωτική σε κάθε applet και χρησιµοποιείται για να µπορούµε να εµφανίζουµε ο,τιδήποτε θέλουµε σ' ένα applet. Χρησιµοποιεί ένα όρισµα (argument), το οποίο είναι το αντικείµενο Graphics του πακέτου java.awt, που εδώ το ονοµάσαµε g. Με την εντολή (συνάρτηση ή µέθοδο) drawstring(), που ανήκει στο αντικείµενο Graphics, µπορούµε να εµφανίσουµε ένα µήνυµα στην οθόνη σε συγκεκριµένο σηµείο x=10 και y=20, όπου η θέση 0, 0 είναι η πάνω αριστερή γωνία του παραθύρου εµφάνισης του applet µέσα στην ιστοσελίδα. Παράδειγµα 3 - Μεταβλητές και Strings Για να δηλώσουµε µεταβλητές στην Java και να δώσουµε και αρχικές τιµές, µπορούµε να γράψουµε τα εξής : int a; float p; float weight = 90; char initial = 'A'; String name = "George"; boolean married = true;

4 Παράδειγµα 4 - Εργασίες µε Strings Για να συγκρίνουµε strings στην Java χρησιµοποιούµε την µέθοδο equals(). Για να βρούµε το µήκος ενός string στην Java χρησιµοποιούµε την µέθοδο length(). Για να µετατρέψουµε ένα string σε κεφαλαία ή πεζά γράµµατα χρησιµοποιούµε τις µεθόδους touppercase() και tolowercase() αντίστοιχα. Ακολουθούν παραδείγµατα : /* Παράδειγµα 4 */ /** Εργασίες µε Strings */ class StrWorks public static void main (String[ ] arguments) String firstname = "John"; String secondname = "Anna"; System.out.println("Είναι τα ονόµατα ίδια; " + firstname.equals(secondname)); System.out.println("Το πρώτο όνοµα έχει " + firstname.length() + " γράµµατα"); System.out.println("Το πρώτο όνοµα µε κεφαλαία : " + firstname.touppercase()); System.out.println("Το δεύτερο όνοµα µε πεζά : " + secondname.tolowercase()); Παράδειγµα 5 - Η Εντολή If Η εντολή if µπορεί να πάρει τις εξής µορφές στην Java :

5 int balance = -1; if (balance < 0) System.out.println("Ο Λογαριασµός σας δεν έχει αντίκρυσµα"); int balance = 3; if (balance < 0) System.out.println("Ο Λογαριασµός σας δεν έχει αντίκρυσµα"); else System.out.println("Τα διαθέσιµα κονδύλια είναι : " + balance); int balance = 0; if (balance < 0) System.out.println("Ο Λογαριασµός σας δεν έχει αντίκρυσµα"); else if (balance = = 0) System.out.println(" εν υπάρχουν κονδύλια στον Λογαριασµός σας"); else System.out.println("Τα διαθέσιµα κονδύλια είναι : " + balance); Παράδειγµα 6 - Η Εντολή Switch Εκτός από τις φωλιασµένες εντολές if-else, ένας άλλος τρόπος για να ελέγξουµε πολλές διαφορετικές καταστάσεις είναι να χρησιµοποιήσουµε την εντολή switch. /* Παράδειγµα 6 */ /** Η Εντολή Switch */ class Months public static void main (String[ ] arguments)

6 int month = 0; if (argument.length > 0) month = Integer.parseInt(arguments[0]); switch (month) case (1): System.out.println("Ιανουάριος"); break; case (2): System.out.println("Φεβρουάριος"); break; case (3): System.out.println("Μάρτιος"); break;... default: System.out.println("Μάρτιος"); Παράδειγµα 7 - Η Εντολή For Ο βρόχος (loop) for ζητάει από τον υπολογιστή να εκτελέσει µια συγκεκριµένη εργασία έναν ορισµένο αριθµό φορών. /* Η Εντολή For */

7 class Numbers01 public static void main(string[ ] arguments) for (int number = 0; number < 100; number++) System.out.println("Αριθµός : " + number + "."); Παράδειγµα 8 - Η Εντολή While Ο βρόχος while ελέγχει µια συνθήκη και αν αυτή είναι αληθής (true), επαναλαµβάνει µια οµάδα εντολών. /* Η Εντολή While */ class Numbers02 public static void main(string[ ] arguments) int number = 0; while (number < 100) System.out.println("Αριθµός : " + number + "."); number++;

8 Παράδειγµα 9 - Η Εντολή Do... While Ο βρόχος do... while εκτελεί µια οµάδα εντολών µία φορά τουλάχιστον και µετά ελέγχει µια συνθήκη και αν αυτή είναι αληθής (true), τότε επαναλαµβάνει την οµάδα εντολών. /* Η Εντολή Do... While */ class Numbers03 public static void main(string[ ] arguments) int number = 0; do System.out.println("Αριθµός : " + number + "."); number++; while (number < 100); Παράδειγµα 10 - Η Εντολή Break Για να βγούµε από έναν βρόχο, ο κανονικός τρόπος είναι να γίνει ψευδής (false) η συνθήκη ελέγχου του βρόχου, υπάρχουν όµως περιπτώσεις που θέλουµε να βγούµε νωρίτερα από τον βρόχο και προς τον σκοπό αυτό χρησιµοποιούµε την εντολή break. /* Η Εντολή Break */ class Numbers04

9 public static void main(string[ ] arguments) int number = 0; do number++; System.out.println("Αριθµός : " + number + "."); if (number = = 50) break; while (number < 100); Παράδειγµα 11 - Οι Πίνακες (Arrays) στην Java Μπορούµε να δηµιουργήσουµε πίνακες (arrays) γι' όλα τα είδη των πληροφοριών που µπορούν να αποθηκευθούν σαν µεταβλητές, ως εξής : String[ ] babyname; int[ ] babyage; boolean[ ] babyweight; Οι παραπάνω εντολές δηµιούργησαν τρεις πίνακες αλλά δεν έχει αποθηκευθεί ακόµα τίποτα µέσα τους. Για να γίνει αυτό, πρέπει να χρησιµοποιήσουµε την εντολή (τελεστή) new και να καθορίσουµε πόσα στοιχεία θα έχει ο πίνακας, ως εξής : String[ ] babyname = new String[40]; Μπορούµε να εκχωρήσουµε και τιµές µαζί µε την δήλωση ενός πίνακα, ως εξής : int[ ] babyage = 2, 5, 4, 3, 1;

10 Οι τιµές που θα καταχωρηθούν στον πίνακα βρίσκονται ανάµεσα στους χαρακτήρες και και χωρίζονται µε κόµµατα. Ακόµη, όλα τα στοιχεία του πίνακα πρέπει να είναι του ίδιου τύπου και δεν καθορίζουµε τον αριθµό τους. Τα στοιχεία ενός πίνακα αριθµούνται από το 0 έως το n-1, όπου το n είναι το πλήθος των στοιχείων του πίνακα. Για να βρούµε το πλήθος των στοιχείων ενός πίνακα, µπορούµε να χρησιµοποιήσουµε την ιδιότητα length, ως εξής : int[ ] babyage = 2, 5, 4, 3, 1; System.out.println("Υπάρχουν " + babyage.length + " µωρά"); String[ ] Names = "Anna", "Georgia", "Maria", "Alexia"; for (int count = 0; count < Names.length; count++) System.out.println("Ονοµα : " + Names[count]); Για να δηµιουργήσουµε έναν πίνακα δύο διαστάσεων, δίνουµε την εξής εντολή : String[ ] babydetail = new String[5][5]; Παράδειγµα 12 - Τα Αντικείµενα (Objects) Το κάθε πρόγραµµα της Java που δηµιουργούµε µπορεί να θεωρηθεί σαν ένα αντικείµενο (object), όπως ο,τιδήποτε άλλο στον αληθινό κόσµο, όπως δηλαδή ένα αυτοκίνητο, ένα ποδήλατο, µια µηχανή ή και οι ίδιοι οι άνθρωποι. Οι άνθρωποι έχουν ένα κεφάλι, δύο χέρια, δύο πόδια κ.ά., ενώ το κάθε µέρος του σώµατος µπορεί να κάνει συγκεκριµένες εργασίες και αποτελείται από πράγµατα που το διαφοροποιούν από το υπόλοιπο σώµα. Αν διασπάσουµε τα προγράµµατα της Java µε τον ίδιο τρόπο, τότε µπορούµε να µιλήσουµε για Προσανατολισµένο σε Αντικείµενα Προγραµµατισµό (Object Oriented Programming ή OOP). Ένα αντικείµενο (object) περιέχει δύο πράγµατα : ιδιότητες (attributes) και συµπεριφορά (behavior) ή µεθόδους (methods). Οι ιδιότητες περιγράφουν το αντικείµενο ενώ οι µέθοδοι περιγράφουν το τι µπορεί να κάνει το αντικείµενο. Στην Java δηµιουργούµε ένα αντικείµενο χρησιµοποιώντας µια τάξη (class) σαν ένα πρότυπο (template). Η τάξη είναι ένα βασικό αντίγραφο (master copy) του αντικειµένου που καθορίζει ποιες ιδιότητες και συµπεριφορά πρέπει να έχει ένα αντικείµενο. Το κάθε πρόγραµµα σε Java που δηµιουργούµε θα αποτελεί µια τάξη (class) επειδή το καθένα έχει χρησιµοποιήσει ένα πρότυπο (template) για την δηµιουργία νέων αντικειµένων.

11 Οπως είδαµε ήδη, τα αντικείµενα δηµιουργούνται χρησιµοποιώντας µια τάξη αντικειµένων σαν οδηγό ή πρότυπο, ως εξής : public class dog String name; public void speak() System.out.println("γαβ γαβ"); Το πρώτο τµήµα της τάξης dog δηµιουργεί µια µεταβλητή string µε όνοµα name, που αποτελεί µια ιδιότητα ή χαρακτηριστικό (attribute) του αντικειµένου και είναι αυτό που ξεχωρίζει το ένα αντικείµενο dog από το άλλο. Το δεύτερο τµήµα της τάξης dog είναι µια µέθοδος (method) ή συµπεριφορά (behavior) ή συνάρτηση (function) µε όνοµα speak() και η οποία περιέχει µία µόνο εντολή για την εµφάνιση ενός µηνύµατος. Αν θέλουµε τώρα να δηµιουργήσουµε ένα αντικείµενο dog σ' ένα πρόγραµµα, µπορούµε να χρησιµοποιήσουµε την εξής εντολή : dog mydog = new dog(); Μπορούµε να δώσουµε τιµή στην µεταβλητή name του αντικειµένου mydog : mydog.name = "Azor"; Μπορούµε να καλέσουµε την µέθοδο speak() του αντικειµένου mydog : mydog.speak(); οπότε θα εµφανισθεί το µήνυµα "γαβ γαβ" στην οθόνη. Παράδειγµα 13 - Η Κληρονοµικότητα (Inheritance) Μια τάξη που κληρονοµεί χαρακτηριστικά από µια άλλη τάξη καλείται δευτερεύουσα τάξη (subclass) και η τάξη από την οποία κληρονοµεί καλείται υπερτάξη (superclass). Για παράδειγµα, θα δηµιουργήσουµε µια τάξη µε όνοµα mammal (θηλαστικό), η οποία θα έχει την ιδιότητα (attribute) name και την µέθοδο (method) sleep().

12 Μετά, χρησιµοποιώντας την λέξη κλειδί extends, θα δηµιουργήσουµε µια νέα τάξη µε όνοµα cat, η οποία θα κληρονοµεί όλα τα χαρακτηριστικά της τάξης mammal αλλά θα έχει και µια επιπλέον δική της µέθοδο µε όνοµα speak(). public class mammal String name; public void sleep() System.out.println("snore... snore..."); public class cat extends mammal public void speak() System.out.println("νιάου νιάου"); Εχουµε τώρα µια δευτερεύουσα τάξη µε όνοµα cat της υπερτάξης mammal, όπου η τάξη cat έχει την ιδιότητα name και την µέθοδο sleep() που έχει κληρονοµήσει από την υπερτάξη mammal καθώς και την δική της µέθοδο speak(). Ακολουθεί έναα παράδειγµα που δηµιουργεί αντικείµενα από την παραπάνω τάξη cat και χρησιµοποιεί τα χαρακτηριστικά της. class newcat public static void main(string arguments[ ]) cat catty = new cat();

13 catty.name = "Azor"; System.out.println("Ο Azor νιαουρίζει"); catty.speak(); System.out.println("Ο Azor κοιµάται"); catty.sleep(); Η συµπεριφορά και οι ιδιότητες µιας τάξης αποτελούν τον συνδυασµό της δικής της συµπεριφοράς και ιδιοτήτων καθώς και της συµπεριφοράς και των ιδιοτήτων που έχει κληρονοµήσει απ' όλες τις υπερτάξεις της. ύο µέθοδοι µπορούν να έχουν το ίδιο όνοµα αν έχουν διαφορετικό αριθµό ορισµάτων ή ορίσµατα διαφορετικού τύπου. Μέσα σε µια δευτερεύουσα τάξη µπορούµε να ξαναορίσουµε και να αντικαταστήσουµε έτσι µια µέθοδο που έχει ήδη οριστεί σε µια υπερτάξη. Αυτό αποκαλείται υπερκάλυψη (overriding) της µεθόδου. Παράδειγµα 14 - Οι Μικροεφαρµογές (Applets) Ολα τα applets αποτελούν δευτερεύουσες τάξεις (subclasses) της τάξης Applet, η οποία είναι µέρος του πακέτου java.applet. εν υπάρχει καµία κύρια µέθοδος main() σ' ένα applet της Java, όπως συµβαίνει µε τις εφαρµογές, και έτσι δεν υπάρχει ένα καθορισµένο σηµείο εκκίνησης για το πρόγραµµα. Αντίθετα, ένα applet περιέχει µια οµάδα από στάνταρτ µεθόδους που είναι έτοιµες να αντιµετωπίσουν συγκεκριµένα συµβάντα καθώς εκτελείται το applet. Σ' αντίθεση µε τις εφαρµογές, οι τάξεις των applets πρέπει να είναι public για να µπορούν να δουλέψουν και δηλώνονται ως εξής : public class lesson01 extends java.applet.applet... Η παραπάνω τάξη κληρονοµεί (extends) όλες τις µεθόδους που εµφανίζονται αυτόµατα όταν χρειασθεί και που είναι οι init(), paint(), start(), stop() και destroy(). Αν θέλουµε να συµβεί κάτι σ' ένα applet, θα πρέπει να υπερκαλύψουµε (override) αυτές τις µεθόδους και οι µέθοδοι που υπερκαλύπτουµε συχνότερα είναι οι paint() και init().

14 Η µέθοδος paint() αποτελεί µέρος κάθε applet που θα δηµιουργούµε και χωρίς αυτήν δεν µπορούµε να εµφανίσουµε τίποτα στην οθόνη. Χρησιµοποιεί ένα όρισµα της τάξης Graphics και η σύνταξή της είναι ως εξής : public class paint(graphics screen)... Θα πρέπει να έχουµε προσθέσει νωρίτερα την εντολή import java.awt.graphics στην αρχή του κώδικα και πριν από τον ορισµό της τάξης. Η µέθοδος init() καλείται µόνο µία φορά όταν εκτελείται το applet και χρησιµοποιείται για να ορίσει µεταβλητές που χρειάζονται στο applet, όπως για παράδειγµα γραµµατοσειρές (fonts), χρώµατα (colors) κ.ά. Η µέθοδος start() καλείται όταν το applet αρχίζει να εκτελείται και για να κληθεί για δεύτερη φορά, πρέπει να σταµατήσει η εκτέλεση του applet. Η µέθοδος stop() καλείται όταν σταµατάει η εκτέλεση του applet, δηλ. όταν φεύγουµε από την ιστοσελίδα. Η µέθοδος destroy() καλείται αµέσως πριν τερµατισθεί το applet. Για να τοποθετήσουµε ένα applet σε µια ιστοσελίδα, θα πρέπει να χρησιµοποιήσουµε τα tags <applet> και </applet>, ως εξής : <applet code="lesson01.class" codebase="java" height=100 width=250> Πρέπει να έχετε έναν φυλλοµετρητή που να υποστηρίζει Java </applet> Η ιδιότητα code αναφέρει το όνοµα του applet που θα εκτελεσθεί, η codebase τον φάκελο όπου υπάρχει ο κώδικας του applet αν δεν είναι ο τρέχον φάκελος και οι height και width το ύψος και το πλάτος αντίστοιχα του ορθογωνίου που θα εµφανίσει το applet στην οθόνη. Ανάµεσα στα tags <applet> και </applet> µπορούµε να γράψουµε ένα κείµενο για να εµφανισθεί σε φυλλοµετρητές που δεν υποστηρίζουν Java. Ακολουθεί ένα απλό παράδειγµα applet. import java.awt.graphics; public class message extends java.applet.applet int Value;

15 public void init() Value = 0; public void paint(graphics screen) screen.drawstring("η αξία του αυτοκινήτου είναι : " + Value, 10, 30); Η µέθοδος drawstring() χρησιµοποιείται για να εµφανίσουµε µηνύµατα σ' ένα applet της Java αντί για την System.out.println(). Μέσα σ' ένα applet µπορούµε να χρησιµοποιήσουµε την µέθοδο repaint() για να καλέσουµε ξανά την µέθοδο paint() στην περίπτωση που έχει γίνει κάποια αλλαγή στην τιµή κάποιας µεταβλητής. Για παράδειγµα, µπορούµε να ξαναγράψουµε την παραπάνω µικροεφαρµογή αλλάζοντας µόνο την µέθοδο paint(), ως εξής : public void paint(graphics screen) screen.drawstring("η αξία του αυτοκινήτου είναι : " + Value, 10, 30); Value++; repaint(); Η τιµή του Value θα αλλάζει συνέχεια και θα καλούµε την µέθοδο repaint(), που στην ουσία είναι η ίδια η µέθοδος paint(), για να εµφανισθεί η νέα τιµή της Value. Παράδειγµα 15 - Η Πολυεπεξεργασία (Multitasking) Ο όρος πολυεπεξεργασία (multitasking) αναφέρεται στην ικανότητα ενός υπολογιστή να µπορεί να εκτελεί δύο ή περισσότερες εργασίες (tasks) ταυτόχρονα. Ενα από τα χαρακτηριστικά της Java είναι η ικανότητά της να γράφει προγράµµατα που να µπορούν να κάνουν πολυεπεξεργασία. Η καθεµία απ' αυτές τις ταυτόχρονες εργασίες

16 καλείται νήµα (thread) και η όλη διαδικασία καλείται πολυνηµάτωση (multithreading). Παράδειγµα 16 - Πέρασµα Παραµέτρων σε Applets Μπορούµε να διαβιβάσουµε παραµέτρους σ' ένα applet χρησιµοποιώντας το tag <param> και τις ιδιότητές του (attributes) name και value. Μπορούµε να έχουµε περισσότερα από ένα tag <param> σ' ένα applet, τα οποία πρέπει να βρίσκονται ανάµεσα στα tags <applet> και </applet>. Η ιδιότητα name χρησιµοποιείται για να ξεχωρίσει η παράµετρος ενώ η ιδιότητα value δίνει µια τιµή στην παράµετρο. Με την µέθοδο getparameter() της τάξης Applet µπορούµε να διαβάσουµε την τιµή µιας παραµέτρου ενός tag <param>. Σαν όρισµα στην µέθοδο δίνουµε το όνοµα της παραµέτρου όπως ορίζεται στην ιδιότητα name. Για παράδειγµα, αν έχουµε τα εξής σ' ένα tag <applet> : <applet>... <param name ="text" value="home">... </applet> Τότε µε την παρακάτω εντολή µέσα από τον κώδικα του applet της Java : String buttontext = getparameter("text") θα καταχωρηθεί η τιµή "Home" στο string buttontext. Επειδή η µέθοδος getparameter() επιστρέφει όλες τις παραµέτρους σαν strings, θα πρέπει να κάνουµε µετατροπές τύπου, ως εξής : <param name="age" value="36">... int age; String ageparam = getparameter("age"); age = Integer.parseInt(ageParam); Αν µια παράµετρος δεν υπάρχει, τότε η µέθοδος getparameter() επιστρέφει µια τιµή null.

17 String pname; String nameparam = getparameter("username"); if (nameparam!= null) pname = nameparam;... screen.drawstring("ονοµα χρήστη : " + pname, 10, 30); Παράδειγµα 17 - Η Τάξη Font (Γραµµατοσειρές) Για να µπορέσουµε να εµφανίσουµε µια γραµµατοσειρά στην Java, πρέπει να γνωρίζουµε τα εξής στοιχεία γι' αυτήν : Τύπος (Arial, Courier κλπ) Στυλ (bold, italic, plain) Μέγεθος σε points Για να δηµιουργήσουµε ένα δικό µας αντικείµενο γραµµατοσειράς, χρησιµοποιούµε την τάξη Font µε τον τελεστή new και περνάµε τρία ορίσµατα, όπως δηλώθηκαν παραπάνω. Μπορούµε να χρησιµοποιήσουµε τις σταθερές Font.PLAIN, Font.BOLD, Font.ITALIC και Font.BOLD+Font.ITALIC. Με την µέθοδο setfont() ορίζουµε µια γραµµατοσειρά ενώ µε την µέθοδο getfont() µπορούµε να δούµε ποια γραµµατοσειρά χρησιµοποιείται εκείνη τη στιγµή. Τα στοιχεία της τρέχουσας γραµµατοσειράς χρησιµοποιούνται για την εµφάνιση του κειµένου στην οθόνη. Ακολουθεί ένα παράδειγµα. import java.awt.*; public class Fonts extends java.applet.applet public void paint(graphics screen) Font currentfont = new Font("TimesRoman", Font.PLAIN, 20); screen.setfont(currentfont); screen.drawstring("γραµµατοσειρά Plain Times Roman 20 point", 10, 30);

18 40); Font combfont = new Font("TimesRoman", Font.BOLD+Font.ITALIC, screen.setfont(combfont); screen.drawstring("γραµµατοσειρά Bold+Italic Times Roman 40 point", 10, 50); Παράδειγµα 18 - Η Τάξη Color (Χρώµατα) Μπορούµε να χρησιµοποιήσουµε δύο τρόπους για να ορίσουµε το χρώµα που θέλουµε να εµφανίσουµε σ' ένα applet. Ο πρώτος χρησιµοποιεί µια σταθερή µεταβλητή της τάξης Color και ο δεύτερος ορίζει νέα χρώµατα µε βάση τις RGB (red, green, bule) τιµές τους από Μπορούµε να ορίσουµε το χρώµα του φόντου της εφαρµογής µε την µέθοδο setbackground() και το χρώµα του κειµένου της εφαρµογής µε την µέθοδο setcolor(). Ακολουθεί ένα παράδειγµα. import java.awt.*; public class Colors extends java.applet.applet public void paint(graphics screen) setbackground(color.green); screen.drawstring("χρώµα φόντου µαύρο", 10, 30); screen.setcolor(color.blue); screen.drawstring(χρώµα κειµένου κόκκινο", 10, 50); Color mystery = new Color(100, 200, 50); setbackground(mystery); screen.drawstring("χρώµα φόντου τυχαίο", 10, 70);

19 Παράδειγµα 19 - Χρήση Γραφικών Στην Java µπορούµε να σχεδιάσουµε τα εξής γραφικά : Γραµµές Ορθογώνια και Τετράγωνα Κύκλους και Ελλείψεις Τόξα Πολύγωνα Ολα τα παραπάνω να είναι γεµισµένα µε χρώµα ή άδεια Για να σχεδιάσουµε ένα γραφικό στην Java χρησιµοποιούµε µια µέθοδο της τάξης Graphics. Για να σχεδιάσουµε µια γραµµή χρησιµοποιούµε την µέθοδο drawline() ως εξής : screen.setcolor(color.red); screen.drawline(100, 150, 170, 200); Η παραπάνω εντολή σχεδιάζει µια γραµµή µε πλάτος 1 pixel και χρώµα κόκκινο από την θέση (100, 150) της οθόνης µέχρι την θέση (170, 200). Για να σχεδιάσουµε ένα ορθογώνιο ή τετράγωνο έχουµε πολλές επιλογές : Η µέθοδος drawrect() για απλό ορθογώνιο, µη γεµισµένο και χωρίς στρογγυλεµένες γωνίες : screen.drawrect(100, 150, 200, 250) Η παραπάνω εντολή σχεδιάζει ένα ορθογώνιο µε πάνω αριστερά κορυφή στο σηµείο 100, 150, πλάτος 200 και ύψος 250. Η µέθοδος fillrect() για γεµισµένο ορθογώνιο : screen.setcolor(color.blue); screen.fillrect(100, 150, 200, 250) Η παραπάνω εντολή σχεδιάζει ένα ορθογώνιο γεµισµένο µε µπλε χρώµα, µε πάνω αριστερά κορυφή στο σηµείο 100, 150, πλάτος 200 και ύψος 250. Η µέθοδος drawroundrect() για ορθογώνιο µε στρογγυλεµένες γωνίες : screen.setcolor(color.green);

20 screen.drawroundrect(100, 150, 200, 250, 15, 15) Η µέθοδος fillroundrect() για γεµισµένο ορθογώνιο µε στρογγυλεµένες γωνίες : screen.setcolor(color.yellow); screen.fillroundrect(100, 150, 200, 250, 15, 15) Οι µέθοδοι drawroundrect() και fillroundrect() έχουν δύο επιπλέον παραµέτρους που είναι η απόσταση από την γωνία που θέλουµε να ξεκινάει η καµπύλη. Για να σχεδιάσουµε µια έλλειψη ή έναν κύκλο χρησιµοποιούµε την µέθοδο drawoval() ως εξής : screen.setcolor(color.red); screen.drawoval(100, 150, 20, 30); Η παραπάνω εντολή σχεδιάζει µια έλλειψη µε κόκκινο χρώµα, µε πάνω αριστερά κορυφή στο σηµείο 100, 150, πλάτος 20 και ύψος 30. Η µέθοδος filloval() γεµίζει την έλλειψη µε χρώµα : screen.setcolor(color.yellow); screen.filloval(100, 150, 20, 30); Για να σχεδιάσουµε ένα τόξο χρησιµοποιούµε την µέθοδο drawarc() ως εξής : screen.setcolor(color.blue); screen.drawarc(100, 150, 30, 20, 45, 180); Η παραπάνω εντολή σχεδιάζει ένα τόξο έλλειψης µε µπλε χρώµα, µε πάνω αριστερά κορυφή στο σηµείο 100, 150, πλάτος 20, ύψος 30, γωνία εκκίνησης του τόξου στις 45 µοίρες και γωνία του τόξου 180 µοίρες µε φορά αντίθετη αυτής των δεικτών του ρολογιού. Η µέθοδος fillarc() γεµίζει το τόξο µε χρώµα : screen.setcolor(color.green); screen.fillarc(100, 150, 20, 20, 90, -180); Για να σχεδιάσουµε ένα πολύγωνο, πρέπει πρώτα να δηµιουργήσουµε έναν πίνακα (array) ακεραίων που θα περιέχει τις x συντεταγµένες και έναν άλλον πίνακα ακεραίων που θα περιέχει τις y συντεταγµένες των κορυφών του πολυγώνου. Χρησιµοποιούµε την µέθοδο drawpolygon(), η οποία παίρνει σαν παραµέτρους τους δύο πίνακες µε τις συντεταγµένες καθώς και έναν ακέραιο αριθµό που παριστάνει τον αριθµό των κορυφών του πολυγώνου.

21 int[] xpoints = 100, 150, 200, 250; int[] ypoints = 50, 100, 150, 300; int point = 4; screen.setcolor(color.red); screen.drawpolygon(xpoints, ypoints, points); Η µέθοδος fillpolygon() γεµίζει το πολύγωνο µε χρώµα : screen.fillpolygon(xpoints, ypoints, points); Παράδειγµα 20 - Πλήκτρα Εντολής Για να µπορέσουµε να δηµιουργήσουµε ένα συστατικό, όπως ένα πλήκτρο εντολής (button) σ' ένα πρόγραµµα της Java, δηµιουργούµε πρώτα το αντικείµενο και µετά χρησιµοποιούµε την µέθοδο add() για να το προσθέσουµε σ' ένα υπάρχον συστατικό. Ενα συστατικό Button είναι ένα πλήκτρο µε δυνατότητα κλικ και µε µια ετικέτα (label, caption) που περιγράφει τι θα συµβεί αν κάνουµε κλικ στο πλήκτρο. Για να προσθέσουµε ένα button σ' ένα applet, γράφουµε τον εξής κώδικα : import java.awt.*; public class lesson20 extends java.applet.applet Button hellobutton = new Button("Hello"); public void init() add(hellobutton); Παράδειγµα 21 - Ετικέτες και Πλαίσια Κειµένου Μια ετικέτα (Label) εµφανίζει ένα µήνυµα (string) που δεν µπορεί να αλλαχθεί από τον χρήστη, ενώ ένα πλαίσιο κειµένου (TextField) είναι µια περιοχή όπου ο χρήστης

22 µπορεί να καταχωρήσει µία γραµµή κειµένου. Μπορούµε να δηµιουργήσουµε ετικέτες και πλαίσια κειµένου σ' ένα applet της Java ως εξής : import java.awt.*; public class lesson21 extends java.applet.applet Label label = new Label(" ιεύθυνση ", Label.RIGHT); TextField address = new TextField(30); public void init() add( label); add( address); Παράδειγµα 22 - Πλαίσια Ελέγχου και Πλήκτρα Επιλογής Ενα πλαίσιο ελέγχου (checkbox) είναι ένα τετράγωνο συστατικό που µπορούµε να επιλέξουµε ανεξάρτητα από άλλα πλαίσια ελέγχου, ενώ ένα πλήκτρο επιλογής (radio button) είναι ένα κυκλικό συστατικό όπου µπορούµε να επιλέξουµε ένα και µόνο ένα από µια οµάδα πλήκτρων επιλογής. Η Java χαρακτηρίζει και τα πλαίσια ελέγχου και τα πλήκτρα επιλογής σαν CheckBox και τα διαχωρίζει αν κατά την στιγµή της δηµιουργίας τους ανήκουν ή όχι σε µια οµάδα (CheckboxGroup). Για να δηµιουργήσουµε ένα πλαίσιο ελέγχου σ' ένα applet γράφουµε τον εξής κώδικα : import java.awt.*; public class lesson22a extends java.applet.applet Checkbox me = new Checkbox("Στείλτε ", true); public void init()

23 add( me); Μπορούµε να προσθέσουµε δύο ορίσµατα κατά την δηµιουργία ενός πλαισίου ελέγχου, όπου το πρώτο είναι µια επεξηγηµατική γραµµή κειµένου που θα εµφανισθεί δίπλα στο πλαίσιο ελέγχου και το δεύτερο είναι µια τιµή boolean που διευκρινίζει αν το πλαίσιο ελέγχου θα είναι επιλεγµένο (true) ή όχι (false) όταν εκτελεσθεί η εφαρµογή. Για να δηµιουργήσουµε πλήκτρα επιλογής σ' ένα applet πρέπει πρώτα να δηµιουργήσουµε µια οµάδα πλαισίων ελέγχου µε το αντικείµενο CheckboxGroup και µετά κατά την δηµιουργία των πλαισίων ελέγχου να χρησιµοποιήσουµε και µια τρίτη παράµετρο που να δηλώνει την οµάδα στην οποία θα ανήκει αυτό το πλαίσιο ελέγχου, άρα στην ουσία δηµιουργούµε ένα πλήκτρο επιλογής. Γράφουµε τον εξής κώδικα : import java.awt.*; public class lesson22b extends java.applet.applet CheckboxGroup cards = new CheckboxGroup(); Checkbox visacard = new Checkbox("Visa Card", true, cards); Checkbox mastercard = new Checkbox("Master Card", false, cards); Checkbox dinerscard = new Checkbox("Diners Card", false, cards); public void init() add(visacard); add(mastercard); add(dinerscard); ηµιουργήσαµε ένα checkbox group µε όνοµα cards και όλα τα πλαίσια ελέγχου (στην ουσία πλήκτρα επιλογής) που δηµιουργήσαµε προστέθηκαν σ' αυτή την οµάδα (group).

24 Παράδειγµα 23 - Λίστες Επιλογής Μια λίστα επιλογής (choice) είναι µια πτυσσόµενη λίστα επιλογών από τις οποίες µόνο µία µπορεί να είναι επιλεγµένη. Είναι γνωστή και σαν πτυσσόµενο ή σύνθετο πλαίσιο (combo box). Για να δηµιουργήσουµε µια λίστα επιλογής, δηµιουργούµε πρώτα το αντικείµενο και µετά προσθέτουµε µία-µία τις επιλογές, ως εξής : import java.awt.*; public class lesson23 extends java.applet.applet Choice sport = new Choice(); public void init() sport.add("μπάσκετ"); sport.add("βόλλεϋ"); sport.add("ποδόσφαιρο"); sport.add("κολύµβηση"); add.sport(); ηµιουργήσαµε µια λίστα επιλογής µε τέσσερα αθλήµατα. Παράδειγµα 24 - Περιοχές Κειµένου Μια περιοχή κειµένου (TextArea) είναι ένα πεδίο κειµένου όπου µπορούµε να καταχωρήσουµε περισσότερες από µία γραµµές κειµένου. Σε µια περιοχή κειµένου πρέπει να καθορίσουµε το πλάτος και το ύψος της και µπορούµε να τοποθετήσουµε και ένα αρχικό κείµενο µαζί την δήλωσή της. Μπορούµε να δηµιουργήσουµε µια περιοχή κειµένου σ' ένα applet της Java ως εξής : import java.awt.*;

25 public class lesson24 extends java.applet.applet TextArea comments = new TextArea("Florina per sempre", 10, 20); public void init() add(comments); Παράδειγµα 25 - Τα Layout Managers Τα αντικείµενα Panel ανήκουν στην κατηγορία των αντικειµένων που είναι γνωστά σαν υποδοχείς (containers). Τα αντικείµενα αυτά δεν εµφανίζουν τίποτα και χρησιµοποιούνται για να περιέχουν άλλα αντικείµενα. Το προκαθορισµένο layout manager είναι η τάξη FlowLayout που έχουµε χρησιµοποιήσει σ' όλα τα παραδείγµατά µας µέχρι τώρα, χωρίς να το έχουµε δηλώσει ρητά. Σύµφωνα µ' αυτό το layout manager, τα αντικείµενα τοποθετούνται σε µια περιοχή από αριστερά προς τα δεξιά και στην επόµενη γραµµή όταν δεν υπάρχει άλλος χώρος. Παράδειγµα 26 - Ο GridLayout Manager Η τάξη GridLayout οργανώνει τα συστατικά σ' έναν υποδοχέα (container) µ' έναν συγκεκριµένο αριθµό γραµµών και στηλών, ως εξής : GridLayout ourlayout = new GridLayout(3, 4); setlayout(ourlayout); Η παραπάνω διάταξη ορίζει την τοποθέτηση των αντικειµένων σ' ένα πλέγµα (grid) µε 3 γραµµές και 4 στήλες. Παράδειγµα 27 - Ο BorderLayout Manager

26 Η τάξη BorderLayout τακτοποιεί τα συστατικά σε πέντες περιοχές, όπου πο τέσσερις χαρακτηρίζονται από τις θέσεις της πυξίδας, δηλ. North, South, East, West και µια για το κέντρο (Center), ως εξής : import java.awt.*; public class lesson27 extends java.applet.applet Button onebutton = new Button("Ενα"); Button twobutton = new Button(" ύο"); Button threebutton = new Button("Τρία"); Button fourbutton = new Button("Τέσσερα"); Button fivebutton = new Button("Πέντε"); public void init() BorderLayout ourlayout = new BorderLayout(); setlayout(ourlayout); add(onebutton, "North"); add(twobutton, "South"); add(threebutton, "East"); add(fourbutton, "West"); add(fivebutton, "Center"); Παράδειγµα 28 - Τα Συµβάντα Χρήστη Η απόκριση στα συµβάντα χρήστη (user events) σ' ένα πρόγραµµα της Java απαιτεί την χρήση ενός ή περισσοτέρων EventListener interfaces. Οι τάξεις ακρόασης (listening classes) αποτελούν µέρος του πακέτου java.awt.event και µπορούµε να τις κάνουµε διαθέσιµες µε την εξής εντολή :

27 import java.awt.event.*; Πρέπει επίσης να χρησιµοποιήσουµε την εντολή implements για να δηλώσουµε ότι θα χρησιµοποιήσουµε ένα ή περισσότερα listening interfaces. Η επόµενη εντολή δηµιουργεί µια τάξη που χρησιµοποιεί το ActionListener, το οποίο είναι ένα interface που χρησιµοποιείται µε πλήκτρα εντολής (buttons) και άλλα συστατικά. public class Graph extends java.applet.applet implements ActionListener... Το EventListener interface δίνει την δυνατότητα σ' ένα συστατικό ενός γραφικού interface χρήστη να παράγει συµβάντα χρήστη. Ενα πρόγραµµα πρέπει να περιλαµβάνει ένα listener interface για κάθε τύπο συστατικού που επιθυµεί να ακούσει, ως εξής : public class Graph3d extends java.applet.applet implements ActionListener, MouseListener... Αφού έχουµε δηµιουργήσει το interface που απαιτείται για ένα συγκεκριµένο συστατικό, θα πρέπει να ορίσουµε αυτό το συστατικό ώστε να δηµιουργεί συµβάντα χρήστη. Για να κάνουµε ένα πλήκτρο εντολής (button) να παράγει ένα συµβάν, χρησιµοποιούµε την µέθοδο addactionlistener(), ως εξής : Button button1 = new Button("Εκκίνηση"); button1.addactionlistener(this); Οταν παράγεται ένα συµβάν χρήστη από ένα συστατικό που περιέχει έναν listener, θα κληθεί αυτόµατα µια µέθοδος. Αυτές οι µέθοδοι πρέπει να βρίσκονται στην τάξη που καθορίσθηκε όταν ο listener προστέθηκε στο συστατικό. Ο κάθε listener διαθέτει διαφορετικές µεθόδους που καλούνται για να συλλάβουν τα συµβάντά τους. Για παράδειγµα, το ActionListener interface στέλνει συµβάντα σε µια τάξη που καλείται actionperformed(), ως εξής : void public actionperformed(actionevent e)

28 ... Ολα τα συµβάντα ενέργειας που στέλνονται σ' αυτό το πρόγραµµα θα πάνε σ' αυτήν την µέθοδο. Στην συγκεκριµένη περίπτωση στέλνουµε ένα αντικείµενο µε όνοµα e της τάξης ActionEvent στην µέθοδο actionperformed(). Υπάρχουν πολλές διαφορετικές τάξεις αντικειµένων που αντιπροσωπεύουν τα συµβάντα χρήστη που µπορούν να σταλούν σ' ένα πρόγραµµα. Αυτές οι τάξεις έχουν µεθόδους που µπορούµε να χρησιµοποιήσουµε για να βρούµε ποιο συστατικό προκάλεσε την εκτέλεση του συµβάντος. Στην µέθοδο actionperformed() µπορούµε να αναγνωρίσουµε το συστατικό αυτό µε την εξής εντολή : String cmd = e.getactioncommand(); Η µέθοδος getactioncommand() επιστρέφει ένα string και αν το συστατικό είναι ένα πλήκτρο εντολής (button), η τιµή του string θα είναι η ετικέτα (label, caption) του πλήκτρου εντολής, ενώ αν το συστατικό είναι ένα πλαίσιο κειµένου (text field), η τιµή του string θα είναι το κείµενο που έχει καταχωρηθεί στο πλαίσιο κειµένου. Με την µέθοδο getsource() µπορούµε να µάθουµε το αντικείµενο που προκάλεσε το συµβάν, ως εξής : Object source = e.getsource(); Παράδειγµα 29 - Συµβάντα µε Πλαίσια Ελέγχου και Λίστες Επιλογής Τα πλαίσια ελέγχου και οι λίστες επιλογής απαιτούν το ItemListener interface. Για να κάνουµε ένα απ' αυτά τα συστατικά να δηµιουργεί συµβάντα, χρησιµοποιούµε την µέθοδο additemlistener(). Οι επόµενες εντολές δηµιουργούν ένα πλαίσιο ελέγχου µε όνοµα visacard και το κάνουν να στέλνει συµβάντα χρήστη κάθε φορά που κάνουµε κλικ πάνω του. Checkbox visacard = new Checkbox("Visa Card", true); visacard.additemlistener(this); Τα συµβάντα λαµβάνονται από την µέθοδο itemstatechanged(), η οποία παίρνει σαν όρισµα ένα αντικείµενο ItemEvent. Για να βρούµε ποιο αντικείµενο προκάλεσε το συµβάν, χρησιµοποιούµε την µέθοδο getitem(). Για να βρούµε αν ένα πλαίσιο ελέγχου είναι επιλεγµένο ή όχι, χρησιµοποιούµε την µέθοδο getstatechange() µε τις σταθερές ItemEvent.SELECTED και ItemEvent.DESELECTED, ως εξής : int status = visacard.getstatechanged();

29 if (status = = ItemEvent.SELECTED) else // το στοιχείο είναι επιλεγµένο // το στοιχείο δεν είναι επιλεγµένο Για να βρούµε την τιµή που έχει επιλεγεί σ' ένα αντικείµενο λίστας, χρησιµοποιούµε την µέθοδο getitem() και µετατρέπουµε την τιµή που επιστρέφει σε string, ως εξής : Object which = visacard.getitem(); String answer = (String) which; Παράδειγµα 30 - Συµβάντα µε Πλαίσια Κειµένου Αν θέλουµε να ελέγξουµε αν έχει λάβει χώρα ένα συµβάν σ' ένα πλαίσιο κειµένου, όπως αλλαγή της τιµής του, χρησιµοποιούµε το TextListener interface. Η µέθοδος addtextlistener() κάνει ένα συστατικό κειµένου να µπορεί να δηµιουργεί συµβάντα χρήστη και η µέθοδος textvaluechanged() λαµβάνει τα συµβάντα, ως εξής : public void textvaluechanged(textevent txt) Object source = txt.getsource(); if (source = = address) else String newaddress = address.gettext();

30 String newzipcode = zipcode.gettext();

Ειδικά Θέματα Προγραμματισμού

Ειδικά Θέματα Προγραμματισμού Ειδικά Θέματα Προγραμματισμού Ενότητα 5: Applets και Γραφικά Μιχάλας Άγγελος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons. Για εκπαιδευτικό

Διαβάστε περισσότερα

Week 10: Graphical User Interfaces

Week 10: Graphical User Interfaces Week 10: Graphical User Interfaces Έννοιες του προγραµµατισµού ΓΠΕ [GUI] Εβδοµάδα 10: Εισαγωγή στα Γραφικά Περιβάλλοντα Επικοινωνίας [Graphical User Interfaces] Συστατικά [components] ιάταξη [layout] [event-driven

Διαβάστε περισσότερα

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 12 : ΒΑΣΙΚΑ ΣΤΟΙΧΕΙΑ GUI AWT ΚΑΙ

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 12 : ΒΑΣΙΚΑ ΣΤΟΙΧΕΙΑ GUI AWT ΚΑΙ Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 12 : ΒΑΣΙΚΑ ΣΤΟΙΧΕΙΑ GUI AWT ΚΑΙ SWING Βασικά στοιχεία ενός GUI Ένα Graphical User Interface-GUI (στα ελληνικά Γραφική Διεπαφή με το Χρήστη) είναι το μέρος του

Διαβάστε περισσότερα

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

2.1. Εντολές. 2.2. Σχόλια. 2.3. Τύποι Δεδομένων 2 Βασικές Εντολές 2.1. Εντολές Οι στην Java ακολουθούν το πρότυπο της γλώσσας C. Έτσι, κάθε εντολή που γράφουμε στη Java θα πρέπει να τελειώνει με το ερωτηματικό (;). Όπως και η C έτσι και η Java επιτρέπει

Διαβάστε περισσότερα

java.awt Font Γραµµατοσειρές Color Χρώµατα

java.awt Font Γραµµατοσειρές Color Χρώµατα Οι κλάσεις Font και Color Η κλάση Font Η κλάση Color Χρήση Γραφικών Σχεδίαση Γραµµών Σχεδίαση Ορθογωνίων Σχεδίαση Ελλείψεων και Κύκλων Σχεδίαση Τόξων Σχεδίαση Πολυγώνων Σχεδίαση Γραµµών µε ιαφορετικά Πλάτη

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Αντικείµενα. ηµιουργία και χρησιµοποίηση αντικειµένων. ηµιουργία αντικειµένων

Αντικείµενα. ηµιουργία και χρησιµοποίηση αντικειµένων. ηµιουργία αντικειµένων Αντικείµενα ηµιουργία και χρησιµοποίηση αντικειµένων ηµιουργία αντικειµένων Για να δηµιουργήσω ένα νέο αντικείµενο χρησιµοποιώ τον τελεστή new µε τοόνοµατηςκλάσηςαπότηνοποίαθέλωναδηµιουργήσωένααντικείµενο,

Διαβάστε περισσότερα

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Graphical User Interfaces (GUI) SWING

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Graphical User Interfaces (GUI) SWING ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Graphical User Interfaces (GUI) SWING Swing Τα GUIs (Graphical User Interfaces) είναι τα συνηθισμένα interfaces που χρησιμοποιούν παράθυρα, κουμπιά, menus,

Διαβάστε περισσότερα

Μικροεφαρμογές (Applets)

Μικροεφαρμογές (Applets) Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Διάλεξη #9 η : Μικρο εφαρμογές (Applets), Γραφικά Γαβαλάς Δαμιανός dgavalas@aegean.gr Μικροεφαρμογές (Applets) Γενικά στην πληροφορική, ένα applet είναι μια

Διαβάστε περισσότερα

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

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #2 ο : Ανατομία προγραμμάτων εφαρμογών, η μέθοδος main(), εμφάνιση μηνυμάτων, Java προγράμματα που εκτελούν αριθμητικές πράξεις Γαβαλάς Δαμιανός

Διαβάστε περισσότερα

ημιουργία Γραφικού Περιβάλλοντος

ημιουργία Γραφικού Περιβάλλοντος Γραφικό Περιβάλλον Χρήστη. Πλαίσια και παράθυρα. Κουμπιά. Ετικέτες και πεδία κειμένου. Πλαίσια ελέγχου. Σύνθετα πλαίσια. Περιοχές κειμένου. Πάνελς. Διαχειριστές Διάταξης. Απόκριση σε δεδομένα που εισάγει

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

Ανάπτυξη Plugins για το AgentSheets

Ανάπτυξη Plugins για το AgentSheets Ανάπτυξη Plugins για το AgentSheets Thought Amplifier AgentSheets Ανάπτυξη Plugins AgentSheets 2.5 Συγγραφείς Τεκµηρίωσης: Alexander Repenning και Ronald Sudomo Εξελληνισµός Τεκµηρίωσης: Λίνος Βίγκλας,

Διαβάστε περισσότερα

Κλάσεις. Κατηγορίες Αντικειµένων. Κλάσεις. Φυσικά Αντικείµενα. Χώρος = Οµάδα Φυσικών Αντικειµένων. Πρόγραµµα = Οµάδα

Κλάσεις. Κατηγορίες Αντικειµένων. Κλάσεις. Φυσικά Αντικείµενα. Χώρος = Οµάδα Φυσικών Αντικειµένων. Πρόγραµµα = Οµάδα Αντικειµενοστραφής Προγραµµατισµός Αντικείµενα Ιεραρχία κλάσεων. Ιδιότητες Συµπεριφορά Ιδιότητες (Μεταβλητές) Συµπεριφορά (Μέθοδοι) Κληρονοµικότητα Μέθοδοι επικάλυψης Η χρήση του this και του super Αντικειµενοστραφής

Διαβάστε περισσότερα

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

Εισαγωγή στην C. Μορφή Προγράµµατος σε γλώσσα C Εισαγωγή στην C Μορφή Προγράµµατος σε γλώσσα C Τµήµα Α Με την εντολή include συµπεριλαµβάνω στο πρόγραµµα τα πρότυπα των συναρτήσεων εισόδου/εξόδου της C.Το αρχείο κεφαλίδας stdio.h είναι ένας κατάλογος

Διαβάστε περισσότερα

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

Οντοκεντρικός Προγραμματισμός Οντοκεντρικός Προγραμματισμός Ενότητα 4: JAVA: ΔΙΕΠΑΦΕΣ ΧΡΗΣΤΗ, ΓΡΑΦΙΚΑ, APPLETS Γραφικές Διεπαφές Χρήστη - awt ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ

Διαβάστε περισσότερα

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

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 4 : CLASSES Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 4 : CLASSES Κων. Κόκκινος Αντικειμενοστραφής Προγραμματισμός Η ιδέα του αντικειμενοστραφούς προγραμματισμού Αυτόνομες οντότητες Στιγμιότυπα οντοτήτων Παράδειγμα

Διαβάστε περισσότερα

Γενικά (για τις γραπτές εξετάσεις)

Γενικά (για τις γραπτές εξετάσεις) Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Διάλεξη #12 η : Επανάληψη Γαβαλάς Δαμιανός dgavalas@aegean.gr Γενικά (για τις γραπτές εξετάσεις) Δεν υπάρχει αυστηρά ορισμένη «ύλη εξετάσεων» (καθώς δεν έχετε

Διαβάστε περισσότερα

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java Είσοδος Χρησιμοποιούμε την κλάση Scanner της Java import java.util.scanner; Αρχικοποιείται με το ρεύμα εισόδου: Scanner in = new Scanner(System.in);

Διαβάστε περισσότερα

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

Εισαγωγή στη γλώσσα προγραμματισμού JAVA. Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών Εισαγωγή στη γλώσσα προγραμματισμού JAVA Δομές Δεδομένων Διδάσκων: Π.Α. Μήτκας Τομέας Ηλεκτρονικής και Υπολογιστών Το πρώτο φλιτζάνι Java Λίστα με τα απαραίτητα Το πρώτο μου πρόγραμμα(hello World) Συνεχίζοντας

Διαβάστε περισσότερα

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

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 18/3/2008 ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 18/3/2008 - Παράδειγμα με switch (το οποίο δείχνει επίσης πότε σε μια άσκηση χρησιμοποιούμε user-input και System.out.println() για έξοδο και πότε χρησιμοποιούμε είσοδο σε μέθοδο

Διαβάστε περισσότερα

Ειδικά Θέματα Προγραμματισμού

Ειδικά Θέματα Προγραμματισμού Ειδικά Θέματα Προγραμματισμού Ενότητα 7: Abstract Window Toolkit (AWT) Μιχάλας Άγγελος Τμήμα Μηχανικών Πληροφορικής ΤΕ Άδειες Χρήσης Το παρόν εκπαιδευτικό υλικό υπόκειται σε άδειες χρήσης Creative Commons.

Διαβάστε περισσότερα

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

Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα; Εισαγωγή Τι χρειάζεται ένας φοιτητής για τη σωστή παρακολούθηση και συμμετοχή στο μαθημα; 1. Σελίδα μαθήματος Εγγραφή Ο κάθε φοιτητής πρέπει να κάνει εγγραφή στη σελίδα του μαθήματος στην πλατφόρμα e-class

Διαβάστε περισσότερα

Το παρακάτω πρόγραμμα ορίζει δυο κλάσεις την SimpleThread και την TwoThreadsTest:

Το παρακάτω πρόγραμμα ορίζει δυο κλάσεις την SimpleThread και την TwoThreadsTest: Εισαγωγή στη γλώσσα προγραμματισμού Java 41 6. Threads Πολλές γλώσσες προγαμματισμού όπως και η Java διαθέτουν εργαλεία για την υλοποίηση threads στα προγράμματά τους. Αυτές οι γλώσσες καλούνται multithreading

Διαβάστε περισσότερα

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 22/11/07 Ακαδ έτος 2007-2008 ΠΛΗΡΟΦΟΡΙΚΗ Ι Φερεντίνος 22/11/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με ΑΜ σε 3, 7, 8 & 9 22/11/07 Παράδειγμα με if/else if και user input: import javautil*; public class Grades public

Διαβάστε περισσότερα

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

Μέθοδοι. Μέθοδοι ηµιουργοί, Υπερφόρτωση και Υπέρβαση Μεθόδων Μέθοδοι Μέθοδοι ηµιουργοί, Υπερφόρτωση και Υπέρβαση Μεθόδων Μέθοδοι Οιµέθοδοικαθορίζουντηνσυµπεριφοράενόςαντικειµένου. Τα βασικά µέρη από τα οποία αποτελείται µία µέθοδος είναι τα εξής: Το όνοµα της µεθόδου

Διαβάστε περισσότερα

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java III ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java III Το if-else statement Το if-else statement δουλεύει καλά όταν στο condition θέλουμε να περιγράψουμε μια επιλογή με δύο πιθανά ενδεχόμενα.

Διαβάστε περισσότερα

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

3 ο Εργαστήριο Μεταβλητές, Τελεστές 3 ο Εργαστήριο Μεταβλητές, Τελεστές Μια μεταβλητή έχει ένα όνομα και ουσιαστικά είναι ένας δείκτης σε μια συγκεκριμένη θέση στη μνήμη του υπολογιστή. Στη θέση μνήμης στην οποία δείχνει μια μεταβλητή αποθηκεύονται

Διαβάστε περισσότερα

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 12 : ΜΙΚΡΟΕΦΑΡΜΟΓΕΣ (APPLETS)

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 12 : ΜΙΚΡΟΕΦΑΡΜΟΓΕΣ (APPLETS) Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 12 : ΜΙΚΡΟΕΦΑΡΜΟΓΕΣ (APPLETS) ΕΙΣΑΓΩΓΗ ΣΤΑ APPLETS Ένα applet είναι ένα πρόγραμμα Java που τρέχει σε ένα πρόγραμμα περιήγησης στο Web (web browser). Ένα applet

Διαβάστε περισσότερα

Προγραµµατισµός ΙΙ Java 2

Προγραµµατισµός ΙΙ Java 2 Προγραµµατισµός ΙΙ Java 2 Γραφικά Γραφικά Τα γραφικά µπορούν να προσαρτηθούν τόσο σε προγράµµατα που υποστηρίζουν γραφικό περιβάλλον εργασίας: Σε µικροεφαρµογές Σε παραθυρικές εφαρµογές Και ΟΧΙ σε εφαρµογές

Διαβάστε περισσότερα

Εργαστήριο 1-1 η Άσκηση - Ανάλυση

Εργαστήριο 1-1 η Άσκηση - Ανάλυση Εργαστήριο 1-1 η Άσκηση - Ανάλυση Εκφώνηση: Δημιουργείστε εφαρμογή σε Java Swing με χρήση του IDE NetBeans όπου θα παρουσιάζεται ποιο κουμπί πατήθηκε. Η εφαρμογή θα μοιάζει ως εξής: Πρώτο Βήμα: Αρχική

Διαβάστε περισσότερα

if(συνθήκη) {... // οµάδα εντολών } C: Από τη Θεωρία στην Εφαρµογή 5 ο Κεφάλαιο

if(συνθήκη) {... // οµάδα εντολών } C: Από τη Θεωρία στην Εφαρµογή 5 ο Κεφάλαιο C: Από τη Θεωρία στην Εφαρµογή Κεφάλαιο 5 ο Έλεγχος Προγράµµατος Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας Η εντολή if (Ι) Η εντολή if είναι µία από τις βασικότερες δοµές ελέγχου ροής στη C, αλλά και στις περισσότερες

Διαβάστε περισσότερα

Κεφάλαιο Ι : Το περιβάλλον εργασίας και το πρώτο απλό πρόγραµµα σε Java.

Κεφάλαιο Ι : Το περιβάλλον εργασίας και το πρώτο απλό πρόγραµµα σε Java. Κεφάλαιο Ι : Το περιβάλλον εργασίας και το πρώτο απλό πρόγραµµα σε Java. 1.1 Το λειτουργικό σύστηµα και το περιβάλλον εργασίας. Η εκµάθηση της γλώσσας προγραµµατισµού Java γίνεται κάτω από το λειτουργικό

Διαβάστε περισσότερα

5. MΑΚΡΟΕΝΤΟΛΕΣ. Η δηµιουργία Μακροεντολής γίνεται µε δύο τρόπους :

5. MΑΚΡΟΕΝΤΟΛΕΣ. Η δηµιουργία Μακροεντολής γίνεται µε δύο τρόπους : 5. MΑΚΡΟΕΝΤΟΛΕΣ. περιέχουν ένα σύνολο ενεργειών-κινήσεων-εντολών οι οποίες εκτελούνται όλες µαζί όταν εκτελείται η µακροεντολή που τις περιέχει. συντάσσονται : sub όνοµα µακροεντολής().....end sub. Οι

Διαβάστε περισσότερα

Σε αυτό το µάθηµα θα ασχοληθούµε µε τη βελτίωση της εµφάνισης ενός ιστοτόπου, αλλά και τον εύκολο χειρισµό όλων των αλλαγών στην εµφάνιση της σελίδας

Σε αυτό το µάθηµα θα ασχοληθούµε µε τη βελτίωση της εµφάνισης ενός ιστοτόπου, αλλά και τον εύκολο χειρισµό όλων των αλλαγών στην εµφάνιση της σελίδας Σε αυτό το µάθηµα θα ασχοληθούµε µε τη βελτίωση της εµφάνισης ενός ιστοτόπου, αλλά και τον εύκολο χειρισµό όλων των αλλαγών στην εµφάνιση της σελίδας µέσω της τεχνολογίας των ιαδοχικών Φύλλων Στυλ (cascading

Διαβάστε περισσότερα

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

Βασικάχαρακτηριστικάτηςγλώσσας. Πίνακες, Έλεγχος Ροής και Βρόχοι Βασικάχαρακτηριστικάτηςγλώσσας Πίνακες, Έλεγχος Ροής και Βρόχοι Πίνακες Τρόπος αποθήκευσης πολλών στοιχείων που έχουν τον ίδιο πρωταρχικό τύπο δεδοµένων ή κλάση. Τα στοιχεία µπορεί να έχουν οποιοδήποτε

Διαβάστε περισσότερα

Εισαγωγή. Κεφάλαιο 2: Βασικές έννοιες Java Κεφάλαιο 3: Χρήση της Java στις σελίδες σας Κεφάλαιο 4: Οι πρώτες σας μικροεφαρμογές...

Εισαγωγή. Κεφάλαιο 2: Βασικές έννοιες Java Κεφάλαιο 3: Χρήση της Java στις σελίδες σας Κεφάλαιο 4: Οι πρώτες σας μικροεφαρμογές... ΠΕΡΙΕΧΟΜΕΝΑ Εισαγωγή... ix Κεφάλαιο 1: Τι είναι η Java;... 1 Ένα σύντομο μάθημα Ιστορίας...2 Γιατί να μάθει κανείς Java;...4 Διαδεδομένοι μύθοι για την Java...5 Τι θα χρειαστείτε...8 Οι διαφορετικές εκδόσεις

Διαβάστε περισσότερα

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

ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός ΑΤΕΙ ΘΕΣΣΑΛΟΝΙΚΗΣ ΤΜΗΜΑ ΜΗΧΑΝΙΚΩΝ ΠΛΗΡΟΦΟΡΙΚΗΣ Αλγοριθμική και Προγραμματισμός Παναγιώτης Σφέτσος sfetsos@it.teithe.gr Εντολές ελέγχου συγκρίσεων επιλογής ή διακλαδώσεων ( if switch) Μία από τις σημαντικότερες

Διαβάστε περισσότερα

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ

ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΤΜΗΜΑ ΜΑΘΗΜΑΤΙΚΩΝ ΕΡΓΑΣΤΗΡΙΟ ΒΑΣΕΩΝ Ε ΟΜΕΝΩΝ ΜΕΡΟΣ ΠΕΜΠΤΟ Triggers, Stored procedures Γιώργος Μαρκοµανώλης Περιεχόµενα Triggers-Ενηµέρωση δεδοµένων άλλων πινάκων... 1 Ασφάλεια...

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

7. Ανάπτυξη GUI σε Java

7. Ανάπτυξη GUI σε Java 7. Ανάπτυξη GUI σε Java Όταν ολοκληρώσετε αυτό το κεφάλαιο, θα μπορείτε: Να περιγράφετε το πακέτο AWT και τις συνιστώσες του. Να εξηγείτε τους containers (περιέκτες), components (συνιστώσες) και layout

Διαβάστε περισσότερα

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java II ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java II HelloWorld.java class HelloWorld public static void main(string args[]) // print message System.out.println( Hello world! ); javac HelloWorld.java

Διαβάστε περισσότερα

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

Βασικά στοιχεία της Java Βασικά στοιχεία της Java προτάσεις, εκφράσεις, µεταβλητές, σταθερές, τελεστές Ορισµοί Πρόταση (statement) είναι µία απλή εντολή σε µία γλώσσα προγραµµατισµού. Γιαπαράδειγµα: int x=12; Έκφραση (expression)

Διαβάστε περισσότερα

ΣΧΕ ΙΑΣΜΟΣ ΕΠΙΦΑΝΕΙΑΣ Με το σχεδιασµό επιφάνειας (Custom επιφάνεια) µπορούµε να σχεδιάσουµε επιφάνειες και αντικείµενα που δεν υπάρχουν στους καταλόγους του 1992. Τι µπορούµε να κάνουµε µε το σχεδιασµό

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

5. Τα βασικά των Applets στην Java

5. Τα βασικά των Applets στην Java Εισαγωγή στη γλώσσα προγραμματισμού Java 33 5. Τα βασικά των Applets στην Java Στην Java τα Applets εκτελούνται μέσα από κάποιον Java WWW Browser. Η αναφορά σε ένα Applet γίνεται σε μια WEB σελίδα μέσω

Διαβάστε περισσότερα

Σχήµα 6.1: Εισαγωγή της εντολής Read From Spreadsheet File στο Block Diagram.

Σχήµα 6.1: Εισαγωγή της εντολής Read From Spreadsheet File στο Block Diagram. Εισαγωγή αρχείων δεδοµένων 1. Η εισαγωγή αρχείων δεδοµένων στο LaVIEW γίνεται στο Block Diagram µε την εντολή Read From Spreadsheet File. 2. Εισάγουµε την εντολή Read From Spreadsheet File στο Block Diagram

Διαβάστε περισσότερα

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

Κλάσεις στη Java. Στοίβα - Stack. Δήλωση της κλάσης. ΗκλάσηVector της Java. Ηκλάση Stack Κλάσεις στην Java Κλάσεις στη Java Παύλος Εφραιμίδης Θα δούμε τη διαδικασία δημιουργίας μιας κλάσης Θα υλοποιήσουμε μια κλάση για τη Δομή Δεδομένων Stack Java Κλάσεις στη Java 1 Java Κλάσεις στη Java 2

Διαβάστε περισσότερα

Περιεχόμενα ΜΕΡΟΣ ΠΡΩΤΟ. Πρόλογος... 13

Περιεχόμενα ΜΕΡΟΣ ΠΡΩΤΟ. Πρόλογος... 13 Περιεχόμενα Πρόλογος... 13 ΜΕΡΟΣ ΠΡΩΤΟ Κεφ. 1 Περί προγραμματισμού και γλωσσών προγραμματισμού Προγράμματα και Λειτουργικά Συστήματα... 17 Γλώσσες προγραμματισμού και εργαλεία ανάπτυξης προγραμμάτων...

Διαβάστε περισσότερα

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

Διάλεξη 3: Προγραμματισμός σε JAVA I. Διδάσκων: Παναγιώτης Ανδρέου Διάλεξη 3: Προγραμματισμός σε JAVA I Στην ενότητα αυτή θα μελετηθούν τα εξής επιμέρους θέματα: Εισαγωγή στις έννοιες: - Στοιχειώδης Προγραμματισμός - Προγραμματισμός με Συνθήκες - Προγραμματισμός με Βρόγχους

Διαβάστε περισσότερα

int array[10]; double arr[5]; char pin[20]; Προγραµµατισµός Ι

int array[10]; double arr[5]; char pin[20]; Προγραµµατισµός Ι Εισαγωγή Στον Προγραµµατισµό «C» Πίνακες Πανεπιστήµιο Πελοποννήσου Τµήµα Πληροφορικής & Τηλεπικοινωνιών Νικόλαος Δ. Τσελίκας Νικόλαος Προγραµµατισµός Δ. Τσελίκας Ι Πίνακες στη C Ένας πίνακας στη C είναι

Διαβάστε περισσότερα

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

Προγραμματισμός Διαδικτύου 1 Ελληνική Δημοκρατία Τεχνολογικό Εκπαιδευτικό Ίδρυμα Ηπείρου Προγραμματισμός Διαδικτύου Ενότητα 5 : Γραφικά με την χρήση του πακέτου AWT Ιωάννης Τσούλος 2 Ανοιχτά Ακαδημαϊκά Μαθήματα Τμήμα Μηχανικών Πληροφορικής

Διαβάστε περισσότερα

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

Κλάσεις στη Java. Παύλος Εφραιμίδης. Java Κλάσεις στη Java 1 Κλάσεις στη Java Παύλος Εφραιμίδης Java Κλάσεις στη Java 1 Κλάσεις στην Java Θα δούμε τη διαδικασία δημιουργίας μιας κλάσης Θα υλοποιήσουμε μια κλάση για τη Δομή Δεδομένων Stack Java Κλάσεις στη Java 2

Διαβάστε περισσότερα

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

Εισαγωγή στον Προγραµµατισµό. Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011 Εισαγωγή στον Προγραµµατισµό Διάλεξη 2 η : Βασικές Έννοιες της γλώσσας προγραµµατισµού C Χειµερινό Εξάµηνο 2011 Hello World /* Αρχείο hello.c * Εµφανίζει στην οθόνη το * µήνυµα hello world */ #include

Διαβάστε περισσότερα

Abstract classes, Interfaces ΦΡΟΝΤΙΣΤΗΡΙΟ JAVA

Abstract classes, Interfaces ΦΡΟΝΤΙΣΤΗΡΙΟ JAVA Abstract classes, Interfaces ΦΡΟΝΤΙΣΤΗΡΙΟ JAVA Τι θα συζητήσουμε σήμερα Αφαιρέσεις στη Java Abstract μέθοδοι και abstract κλάσεις Interfaces (=διασυνδέσεις, διεπαφές) Instanceof Παραδείγματα κώδικα Αφηρημένες

Διαβάστε περισσότερα

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

3. Εκφράσεις και έλεγχος ροής 3. Εκφράσεις και έλεγχος ροής Τελειώνοντας αυτό το κεφάλαιο θα μπορείτε: Να διακρίνετε ανάμεσα σε μεταβλητές μέλη και αυτόματες μεταβλητές Να περιγράφετε την αρχικοποίηση των μεταβλητών μελών Να αναγνωρίζετε

Διαβάστε περισσότερα

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

public void printstatement() { System.out.println(Employee:  + name +  with salary:  + salary); Κληρονομικότητα Η κληρονομικότητα (inheritance) αποτελεί έναν από τους χαρακτηριστικότερους μηχανισμούς των αντικειμενοστρεφών γλωσσών προγραμματισμού. Επιτρέπει την δημιουργία μιας νέας κλάσης απορροφώντας

Διαβάστε περισσότερα

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πίνακες Κλάσεις και Αντικείμενα ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πίνακες Κλάσεις και Αντικείμενα Μαθήματα από το πρώτο εργαστήριο Δημιουργία αντικειμένου Scanner Scanner input = new Scanner(System.in); Το αντικείμενο input

Διαβάστε περισσότερα

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

Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript Β. Εισαγωγή στον Προγραμματισμό Η/Υ με την JavaScript Β.1 Τύποι Δεδομένων Όλες οι γλώσσες προγραμματισμού (πρέπει να) υποστηρίζουν πέντε (5) πρωταρχικούς τύπους δεδομένων: char (character) int (integer)

Διαβάστε περισσότερα

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal 1 ο Μέρος σηµειώσεων (Ενότητες 8.1 & 8.2 σχολικού βιβλίου)

ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal 1 ο Μέρος σηµειώσεων (Ενότητες 8.1 & 8.2 σχολικού βιβλίου) ΔΟΜΗΜΕΝΟΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Κεφάλαιο 8 : H γλώσσα προγραµµατισµού Pascal 1 ο Μέρος σηµειώσεων (Ενότητες 8.1 & 8.2 σχολικού βιβλίου) 1. Εισαγωγή Χαρακτηριστικά της γλώσσας Τύποι δεδοµένων Γλώσσα προγραµµατισµού

Διαβάστε περισσότερα

ΕΠΛ 012. JavaScripts

ΕΠΛ 012. JavaScripts ΕΠΛ 012 JavaScripts Γλώσσα JavaScript (JS) ηµιουργεί δυναµικές ιστοσελίδες και αλληλεπιδράσεις µε το χρήστη εν είναι Java, αλλά είναι αντικειµενοστραφής (απλό µοντέλο υποκειµένων) Objects, properties (τιµές

Διαβάστε περισσότερα

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 6 : ΠΙΝΑΚΕΣ

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 6 : ΠΙΝΑΚΕΣ Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 6 : ΠΙΝΑΚΕΣ Κων. Κόκκινος ΠΙΝΑΚΕΣ (ARRAYS) Είναι χώροι της μνήμης για προσωρινή αποθήκευση δεδομένων του ίδιου τύπου. Οι πίνακες είναι δομές δεδομένων που τις

Διαβάστε περισσότερα

C: Από τη Θεωρία στην Εφαρµογή 2 ο Κεφάλαιο

C: Από τη Θεωρία στην Εφαρµογή 2 ο Κεφάλαιο C: Από τη Θεωρία στην Εφαρµογή Κεφάλαιο 2 ο Τύποι Δεδοµένων Δήλωση Μεταβλητών Έξοδος Δεδοµένων Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας Μνήµη και Μεταβλητές Σχέση Μνήµης Υπολογιστή και Μεταβλητών Η µνήµη (RAM) ενός

Διαβάστε περισσότερα

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

Οντοκεντρικός Προγραμματισμός Οντοκεντρικός Προγραμματισμός Ενότητα 4: JAVA: ΔΙΕΠΑΦΕΣ ΧΡΗΣΤΗ, ΓΡΑΦΙΚΑ, APPLETS Γραφικά, Java Applets ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής

Διαβάστε περισσότερα

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

Κλάσεις και Αντικείµενα Κλάσεις και Αντικείµενα Γρηγόρης Τσουµάκας Τµήµα Πληροφορικής, Αριστοτέλειο Πανεπιστήµιο Θεσσαλονίκης Κλάσεις και Αντικείµενα 2 Τα αντικείµενα σε µια αντικειµενοστρεφή γλώσσα προγραµµατισµού, µοντελοποιούν

Διαβάστε περισσότερα

Προγραµµατισµός ΙΙ Java 2

Προγραµµατισµός ΙΙ Java 2 Προγραµµατισµός ΙΙ Java 2 Προχωρηµένα Θέµατα Πακέτα Τις κλάσεις που κατασκευάζουµε µπορούµε να τις οργανώνουµε σε πακέτα εν «κουβαλάµε» µια-µια τις κλάσεις που επιθυµούµε αλλά ένα συµπαγές αρχείο, το πακέτο

Διαβάστε περισσότερα

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

Περιεχόµενα. 1 Εισαγωγή στις οµές εδοµένων 3. 2 Στοίβα (Stack) 5 Περιεχόµενα 1 Εισαγωγή στις οµές εδοµένων 3 2 Στοίβα (Stack) 5 i ΠΕΡΙΕΧΟΜΕΝΑ ΠΕΡΙΕΧΟΜΕΝΑ ii Πληροφορίες Εργαστηρίου Σκοπός του εργαστηρίου Το εργαστήριο οµές εδοµένων αποσκοπεί στην εφαρµογή των τεχνολογιών

Διαβάστε περισσότερα

Κεφάλαιο 5ο: Εντολές Επανάληψης

Κεφάλαιο 5ο: Εντολές Επανάληψης Χρήστος Τσαγγάρης ΕΕ ΙΠ Τµήµατος Μαθηµατικών, Πανεπιστηµίου Αιγαίου Κεφάλαιο 5ο: Εντολές Επανάληψης Η διαδικασία της επανάληψης είναι ιδιαίτερη συχνή, αφού πλήθος προβληµάτων µπορούν να επιλυθούν µε κατάλληλες

Διαβάστε περισσότερα

Η Βίβλος των CSS. Εισαγωγή στα CSS

Η Βίβλος των CSS. Εισαγωγή στα CSS Η Βίβλος των CSS Εισαγωγή στα CSS Τα Διαδοχικά Φύλλα Στυλ (CSS, Cascading Style Sheets) αποτελούν ένα πολύ καλό εργαλείο για να μπορούμε να αλλάζουμε την εμφάνιση και τη διάταξη (layout) των ιστοσελίδων

Διαβάστε περισσότερα

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 18/10/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 8 & 9 18/10/07 Αλγόριθμος: Βήμα προς βήμα διαδικασία για την επίλυση κάποιου προβλήματος. Το πλήθος των βημάτων πρέπει να είναι πεπερασμένο. Αλλιώς: Πεπερασμένη

Διαβάστε περισσότερα

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πίνακες Κλάσεις και Αντικείμενα ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Πίνακες Κλάσεις και Αντικείμενα Μαθήματα από το πρώτο εργαστήριο Έλεγχος ισότητας για Strings: Διαβάζουμε το String option και θέλουμε ένα loop να συνεχίσει

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

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

Εργαστήριο Java. Διδάσκουσα: Εργαστηριακοί Συνεργάτες: Εργαστήριο Java Διδάσκουσα: Πρέντζα Ανδριάνα aprentza@unipi.gr Εργαστηριακοί Συνεργάτες: Γεωργιοπούλου Ρούλα Λύβας Χρήστος roulageorio@ssl-unipi.gr clyvas@unipi.gr Εργαστήριο 3 Java Classes Java Objects

Διαβάστε περισσότερα

8. Σηµειώσεις Access. Κατηγορίες φόρµας ως προς τον τρόπο προβολής των δεδοµένων

8. Σηµειώσεις Access. Κατηγορίες φόρµας ως προς τον τρόπο προβολής των δεδοµένων Μάθηµα 8 ηµιουργία φορµών Μέσω των φορµών µπορούµε να εµφανίσουµε και να τροποποιήσουµε δεδοµένα από πίνακες και ερωτήµατα ή να εισαγάγουµε δεδοµένα σε πίνακες. Επίσης έχουµε τη δυνατότητα να καθορίζουµε

Διαβάστε περισσότερα

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

Εισαγωγή στη γλώσσα προγραμματισμού Java 69 Εισαγωγή στη γλώσσα προγραμματισμού Java 69 9. Animation σε Java 9.1 Γενικά περί Animation Ένας από τους καλύτερους τρόπους για να γίνει ένα πρόγραμμα σε Java ή μια σελίδα που τρέχει Java applet πιο ελκυστική,

Διαβάστε περισσότερα

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

Οντοκεντρικός Προγραμματισμός Οντοκεντρικός Προγραμματισμός Ενότητα 5: H ΓΛΩΣΣΑ C++ Διαφορές Java και C++ ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής ΔΙΑΦΟΡΕΣ JAVA C++ Η

Διαβάστε περισσότερα

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

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Έλεγχος Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Σχεσιακοί Τελεστές και Ισότητας Ένα πρόγραμμα εκτός από αριθμητικές πράξεις

Διαβάστε περισσότερα

ΑΠΛΗ ΚΛΗΡΟΝΟΜΙΚΟΤΗΤΑ

ΑΠΛΗ ΚΛΗΡΟΝΟΜΙΚΟΤΗΤΑ ΚΛΗΡΟΝΟΜΙΚΟΤΗΤΑ Μηχανισµός υλοποίησης των σχέσεων γενίκευσης/εξειδίκευσης µεταξύ κλάσεων Η σχέση εξειδίκευσης «υποκλάση-της» (subclass-of)είναι γνωστή σαν σχέση «είναι ένα» (isa) ή «είναι ένα είδος» (ako:

Διαβάστε περισσότερα

HelloWorld. Παύλος Εφραιμίδης. Java Το πρόγραμμα HelloWorld 1

HelloWorld. Παύλος Εφραιμίδης. Java Το πρόγραμμα HelloWorld 1 HelloWorld Παύλος Εφραιμίδης Java Το πρόγραμμα HelloWorld 1 Το πρόγραμμα HelloWorld.java Σχόλια στη Java /** * The HelloWorld class */ class HelloWorld { public static void main(string[] args) { System.out.println("Hello

Διαβάστε περισσότερα

Γενικό Λύκειο Κρουσώνα - Σχολικό έτος 2013-2014 Εκπαιδευτικός: Παπαδάκης Σταµάτης

Γενικό Λύκειο Κρουσώνα - Σχολικό έτος 2013-2014 Εκπαιδευτικός: Παπαδάκης Σταµάτης Οδηγάµε το Γενικό Λύκειο Κρουσώνα - Σχολικό έτος 2013-2014 Φύλλο Εργασίας Προγραµµατισµός Εφαρµογής στο AppInventor http://ai2.appinventor.mit.edu Ακολουθώντας τα βήµατα αυτού του φύλλου εργασίας, θα αναπτύξουµε

Διαβάστε περισσότερα

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

2. Προσδιοριστές, δεσμευμένες λέξεις και τύποι 2. Προσδιοριστές, δεσμευμένες λέξεις και τύποι Τελειώνοντας αυτό το κεφάλαιο θα μπορείτε: Να χρησιμοποιείτε σχόλια σε ένα πηγαίο πρόγραμμα Java. Να διακρίνετε σωστούς από λάθος προσδιοριστές. Να αναγνωρίζετε

Διαβάστε περισσότερα

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

Αντικειμενοστραφής Προγραμματισμός Εξάμηνο Μάθημα Τίτλος 2013 2014 Εαρινό Αντικειμενοστραφής Προγραμματισμός Applets Α. Ύλη εργαστηρίου 6.1 Applets 6.2 Μέθοδοι start, init, paint, stop και destroy 6.3 Γραφικά 6.4 Χρώματα 6.5 Σχήματα Προετοιμασία

Διαβάστε περισσότερα

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client

Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client ΕΣΔ 516 Τεχνολογίες Διαδικτύου Δυναμικές Ιστοσελίδες Εισαγωγή στην Javascript για προγραμματισμό στην πλευρά του client Περιεχόμενα Περιεχόμενα Javascript και HTML Βασική σύνταξη Μεταβλητές Τελεστές Συναρτήσεις

Διαβάστε περισσότερα

Πληρουορική Γ Γσμμασίοσ

Πληρουορική Γ Γσμμασίοσ Πληρουορική Γ Γσμμασίοσ Προγραμματισμός και Αλγόριθμοι Από το και τημ Χελώμα στημ Ευριπίδης Βραχνός http://evripides.mysch.gr/ 2014 2015 1 Προγραμματισμός Ζάννειο Πρότυπο Πειραματικό Γυμνάσιο Πειραιά Ενότητα:

Διαβάστε περισσότερα

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Αναφορές Στοίβα και Σωρός Μνήμης Αντικείμενα ως ορίσματα ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αναφορές Στοίβα και Σωρός Μνήμης Αντικείμενα ως ορίσματα ΑΝΑΦΟΡΕΣ new Όπως είδαμε για να δημιουργήσουμε ένα αντικείμενο χρειάζεται να καλέσουμε τη new. Για

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

ΥΠΗΡΕΣΙΑ WEBMAIL ΚΥΠΕΣ

ΥΠΗΡΕΣΙΑ WEBMAIL ΚΥΠΕΣ ΥΠΗΡΕΣΙΑ WEBMAIL ΚΥΠΕΣ Η υπηρεσία διαχείρισης αλληλογραφίας µέσω web (webmail) δίνει την δυνατότητα στους χρήστες να διαχειριστούν την αλληλογραφία τους απ οποιοδήποτε σηµείο βρίσκονται εφόσον υπάρχει

Διαβάστε περισσότερα

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

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

Διαβάστε περισσότερα

a = 10; a = k; int a,b,c; a = b = c = 10;

a = 10; a = k; int a,b,c; a = b = c = 10; C: Από τη Θεωρία στην Εφαρµογή Κεφάλαιο 4 ο Τελεστές Γ. Σ. Τσελίκης Ν. Δ. Τσελίκας Ο τελεστής εκχώρησης = Ο τελεστής = χρησιµοποιείται για την απόδοση τιµής (ή αλλιώς ανάθεση τιµής) σε µία µεταβλητή Π.χ.

Διαβάστε περισσότερα

Η Γλώσσα Προγραµµατισµού C++ (The C++ Programming Language) Ιστοσελίδα του µαθήµατος. Περιεχόµενα. ηµήτριος Κατσαρός, Ph.D. Κλάσεις.

Η Γλώσσα Προγραµµατισµού C++ (The C++ Programming Language) Ιστοσελίδα του µαθήµατος. Περιεχόµενα. ηµήτριος Κατσαρός, Ph.D. Κλάσεις. 1 Η Γλώσσα Προγραµµατισµού C++ (The C++ Programming Language) ηµήτριος Κατσαρός, Ph.D. Χειµώνας 2005 ιάλεξη 5η Ιστοσελίδα του µαθήµατος 2 http://skyblue.csd.auth.gr/~dimitris/courses/cpp_fall05.htm Θα

Διαβάστε περισσότερα

Τ.Ε.Ι. Μεσολογγίου, Τµήµα τηλεπικοινωνιακών Συστημάτων & Δικτύων

Τ.Ε.Ι. Μεσολογγίου, Τµήµα τηλεπικοινωνιακών Συστημάτων & Δικτύων Εργαστήριο Java Lab09 Αντικείμενο: Πολυνηματικές εφαρμογές Η χρήση περισσότερων από μιας ροής εντολών μέσα σε ένα πρόγραμμα είναι γνωστή ως multithreading. H κάθε μια ροή εντολών μέσα στο πρόγραμμα ονομάζεται

Διαβάστε περισσότερα

Εισαγωγή στην αντικειµενοστρεφή τεχνολογία

Εισαγωγή στην αντικειµενοστρεφή τεχνολογία 1 Ελληνικό Ανοικτό Πανεπιστήµιο Εισαγωγή στην αντικειµενοστρεφή τεχνολογία ρ. Πάνος Φιτσιλής Περιεχόµενα Γιατί µοντελοποιούµε Εισαγωγή στη UML Ένα απλό παράδειγµα 2 Γιατί µοντελοποιούµε; Ησηµασία της µοντελοποίησης

Διαβάστε περισσότερα

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

Οντοκεντρικός Προγραμματισμός Οντοκεντρικός Προγραμματισμός Ενότητα 3: JAVA: ΕΞΑΙΡΕΣΕΙΣ, ΕΙΣΟΔΟΣ-ΕΞΟΔΟΣ, ΝΗΜΑΤΑ Νήματα ΔΙΔΑΣΚΟΝΤΕΣ: Ιωάννης Χατζηλυγερούδης, Χρήστος Μακρής Πολυτεχνική Σχολή Τμήμα Μηχανικών Η/Υ & Πληροφορικής ΝΗΜΑΤΑ

Διαβάστε περισσότερα

ζωγραφίζοντας µε τον υπολογιστή

ζωγραφίζοντας µε τον υπολογιστή ζωγραφίζοντας µε τον υπολογιστή Μια από τις εργασίες που µπορούµε να κάνουµε µε τον υπολογιστή είναι και η ζωγραφική. Για να γίνει όµως αυτό πρέπει ο υπολογιστής να είναι εφοδιασµένος µε το κατάλληλο πρόγραµµα.

Διαβάστε περισσότερα

Γνωριµία µε τη Microsoft Access

Γνωριµία µε τη Microsoft Access Γνωριµία µε τη Microsoft Access ηµιουργία νέας βάσης δεδοµένων Έναρξη - Προγράµµατα - Microsoft Access - ηµιουργία νέας βάσης δεδοµένων µε χρήση Κενής βάσης δεδοµένων - ΟΚ Επιλέγουµε Φάκελο και στο Όνοµα

Διαβάστε περισσότερα

Προγραµµατισµός 2 The shell

Προγραµµατισµός 2 The shell Προγραµµατισµός 2 The shell 1 CLI vs GUI! CLI (Command Line Interface) Μεγαλύτερη ευελιξία και ταχύτητα Πιο εύκολο να γίνουν πολύπλοκες λειτουργίες. find. -mtime -2 -name '*.txt' -exec sed -i.bak 's/hi/bye/g'

Διαβάστε περισσότερα

Σχήµα 3.1: Εισαγωγή shift register σε βρόγχο for-loop.

Σχήµα 3.1: Εισαγωγή shift register σε βρόγχο for-loop. Η δοµή «Shift register» 1. Η δοµή «Shift register» εισάγεται στο βρόγχο for-loop αλλά και σε άλλους βρόγχους που θα δούµε στη συνέχεια, όπως ο βρόγχος «While loop». Ο τρόπος εισαγωγής και λειτουργίας της

Διαβάστε περισσότερα

Σχήµα 5.1: Εισαγωγή της δοµής formula node στο Block Diagram.

Σχήµα 5.1: Εισαγωγή της δοµής formula node στο Block Diagram. Η δοµή Formula Node 1. Η δοµή Formula Node επιτρέπει την εισαγωγή αναλυτικών σχέσεων στο Block Diagram µε πληκτρολόγηση, αποφεύγοντας έτσι την εισαγωγή των εικονίδιων συναρτήσεων απλών αλγεβρικών πράξεων

Διαβάστε περισσότερα

Name (.: lblname Caption (. : 0 = BorderStyle ( 1 = 0 = Alignment ( ) 2 = Font ( Times New, Bold, 12

Name (.: lblname Caption (. : 0 = BorderStyle ( 1 = 0 = Alignment ( ) 2 = Font ( Times New, Bold, 12 Visual Basic (µέρος 2 ο ) 1 Περιεχόµενα Ετικέτες (Labels)... 3 Πλαίσια Κειµένου (TextBoxes)... 4 Πλήκτρα Εντολών (Command Buttons)... 6 Πλήκτρα Επιλογής (Option Buttons)... 7 Πλαίσια Ελέγχου (Check Boxes)...

Διαβάστε περισσότερα

Postgress ΣΤΟΧΟΣ ΣΧΕΤΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ ΥΛΙΚΟ. ΠΕΡΙΒΑΛΛΟΝ ΓΙΑ ΕΞΑΣΚΗΣΗ pgadmin ΥΠΟΒΑΘΡΟ. Συναρτήσεις στην PostgreSQL. 1. Γενικά

Postgress ΣΤΟΧΟΣ ΣΧΕΤΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ ΥΛΙΚΟ. ΠΕΡΙΒΑΛΛΟΝ ΓΙΑ ΕΞΑΣΚΗΣΗ pgadmin ΥΠΟΒΑΘΡΟ. Συναρτήσεις στην PostgreSQL. 1. Γενικά ΣΤΟΧΟΣ Postgress Το 9ο εργαστήριο εισάγει τον/ην φοιτητή/τρια στη χρήση και προγραµµατισµό συναρτήσεων στην PostgreSQL. ΣΧΕΤΙΚΟ ΕΚΠΑΙ ΕΥΤΙΚΟ ΥΛΙΚΟ Η σχετική ύλη του βιβλίου του µαθήµατος (διαφάνειες και

Διαβάστε περισσότερα