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

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

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

Transcript

1 Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Αντικειμενοστρεφής Προγραμματισμός 6/3/2017 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια

2 Βασικό λεξιλόγιο Μία ενότητα κώδικα, ένα πρόγραμμα κατά την ορολογία των διαδικαστικών γλωσσών προγραμματισμού ονομάζεται κλάση (class) Οι υπορουτίνες της ονομάζονται μέθοδοι (methods) Μία κλάση μπορεί να ορίζει μεθόδους για δική της χρήση (ιδιωτικές μέθοδοι) ή για χρήση από άλλες κλάσεις (δημόσιες μέθοδοι) Όταν καλούμε μία μέθοδο, στέλνουμε ένα μήνυμα (message) στο αντικείμενο του οποίου η κλάση υλοποιεί την ομώνυμη μέθοδο. Το πλήρες όνομα της μεθόδου είναι ΌνομαΚλάσης.ΌνομαΜεθόδου και ακολουθεί η λίστα παραμέτρων Μπορούμε να δηλώσουμε τις ιδιότητες (properties) που περιλαμβάνει μία κλάση σα να ορίζαμε ένα νέο τύπο δεδομένων Σε αυτή την περίπτωση οι κλάσεις λειτουργούν ως πρότυπα ή καλούπια δεδομένων Κατά την εκτέλεση δημιουργούνται αντικείμενα (objects) που είναι στιγμιότυπα των κλάσεων

3 Βασικές αρχές λειτουργίας ενός τυπικού περιβάλλοντος Java Συστήματα ανάπτυξης εφαρμογών σε Java Αποτελούνται από το περιβάλλον ανάπτυξης, την γλώσσα, Java Applications Programming Interface (API), class libraries Τα προγράμματα Java ακολουθούν τις εξής φάσεις δημιουργίας: Edit (πληκτρολόγηση) Χρήση ενός editor ώστε να γραφτεί το πρόγραμμα Java vi,emacs, notepad, Jbuilder, Visual J++.java extension Compile (μετάφραση) Μεταφράζει το πρόγραμμα σε μορφή που είναι κατανοητή σε έναν μεταφραστή Java javac εντολή: javac myprogram.java Δημιουργεί.class αρχείο που περιέχει σειρά από bytes (myprogram.class)

4 Βασικές αρχές λειτουργίας ενός τυπικού περιβάλλοντος Java Loading (φόρτωμα) Ο Class loader μεταφέρει το αρχείο τύπου.class στη μνήμη Εφαρμογές: τρέχουν στον υπολογιστή του χρήστη Applets: φορτώνονται, προσωρινά, στο web browser του χρήστη Οι κλάσεις φορτώνονται και εκτελούνται από τον διερμηνευτή με χρήση της εντολής java, π.χ. java Welcome Τα έγγραφα σε μορφή HTML μπορούν να αναφέρονται σε Java Applets, που είναι φορτωμένα στο web browser

5 Βασικές αρχές λειτουργίας ενός τυπικού περιβάλλοντος Java Verify (επαλήθευση) Ο Bytecode verifier επαληθεύει ότι ο ενδιάμεσος κώδικας είναι σωστός και δεν παραβιάζει την ασφάλεια Η Java πρέπει να είναι ασφαλής δυνατή η πρόκληση προβλημάτων (π.χ. από ιούς) Execute (εκτέλεση) Ο υπολογιστής εκτελεί τον κώδικα, ένα-ένα bytecode Έτσι, εκτελεί τον υπολογισμό που περιγράφεται στο πρόγραμμα Debugging (αποσφαλμάτωση) καθώς τα προγράμματα (συνήθως) δεν τρέχουν σωστά με την πρώτη! Κάνουμε τις απαραίτητες αλλαγές και επαναλαμβάνουμε τη διαδικασία

6 Βήματα Δημιουργίας Προγράμματος σε Java (1/3) Δημιουργία του πηγαίου κώδικα (source code) με τη χρήση ενός editor (π.χ. Notepad, Textpad, κλπ.) MyProgram.java

7 Βήματα Δημιουργίας Προγράμματος σε Java (2/3) Μεταγλώττιση (compilation) του πηγαίου κώδικα (MyProgram.java) σε Java bytecode (MyProgram.class) από τον Java Compiler javac MyProgram.java Αν δεν υπάρχουν λάθη MyProgram.class

8 Βήματα Δημιουργίας Προγράμματος σε Java (3/3) Εκτέλεση προγράμματος του bytecode (MyProgram.class) από τον Java Interpreter java MyProgram Αν δεν υπάρχουν λάθη ΑΠΟΤΕΛΕΣΜΑΤΑ (υπολογισμοί, εκτύπωση στην οθόνη, άλλες λειτουργίες, κλπ.)

9 Compiling Java

10 Παρατήρηση H Java είναι case-sensitive (διάκριση μεταξύ πεζών και κεφαλαίων χαρακτήρων) Myprogram MyProgram myprogram

11 Εκτός από το JDK, επιπλέον Ένας απλός editor (Notepad, WordPad, κλπ.) ή Ένα ολοκληρωμένο περιβάλλον ανάπτυξης IDE (Integrated Development Environment) π.χ. JBuilder, Eclipse, NetBeans, κλπ.

12 Το πρώτο πρόγραμμα σε Java Παράδειγμα Εκτύπωση μιας γραμμής κειμένου

13 Εκτύπωση μιας γραμμής κειμένου 1 // Welcome.java 2 // Text-printing program. 3 4 public class Welcome { 5 6 // main method begins execution of Java application 7 public static void main( String args[] ) 8 { 9 System.out.println( "Welcome to Java Programming!" ); } // end method main } // end class Welcome Welcome to Java Programming!

14 Δομή προγράμματος class CLASSNAME { public static void main(string[] arguments){ STATEMENTS } }

15 1 // Welcome.java Σχόλια αρχίζουν με // Αγνοούνται κατά την εκτέλεση Περιγραφή και τεκμηρίωση κώδικα Αναγνωσιμότητα Επίσης με /*... */ /* αυτό είναι ένα παραδοσιακό σχόλιο και μπορεί να χωριστεί σε πολλές γραμμές */ 2 // Text-printing program Άλλο ένα σχόλιο Προσοχή: Οι αριθμοί των γραμμών δεν είναι μέρος του προγράμματος, προστίθενται για ευκολία

16 4 public class Welcome { Δήλωση κλάσης για την κλάση Welcome Κάθε πρόγραμμα Java έχει τουλάχιστον μία κλάση που ορίζεται από το χρήστη (user-defined class) Λέξη κλειδί class ακολουθούμενη από το όνομα της κλάσης Κατά την επικρατούσα προγραμματιστική σύμβαση τα ονόματα των κλάσεων ξεκινούν με κεφαλαίο Το ίδιο ισχύει για κάθε νέα λέξη εντός του ονόματος της κλάσης Π.χ. SampleClassName

17 4 public class Welcome { Δήλωση κλάσης για την κλάση Welcome Σειρά χαρακτήρων από γράμματα, ψηφία, underscores ( _ ) και dollar ( $ ) Δεν αρχίζει με ψηφίο, δεν έχει κενά Παραδείγματα: Welcome, $value, _value, button7 7button δεν είναι έγκυρο Η Java διακρίνει τα πεζά και τα κεφαλαία γράμματα (case sensitive) Τα a1 και A1 είναι διαφορετικά Προς το παρόν θα ασχοληθούμε μόνο με public κλάσεις

18 4 public class Welcome { Αποθήκευση αρχείων Το όνομα το αρχείου προκύπτει από το όνομα της κλάσης με την επέκταση.java Welcome.java Αριστερή αγκύλη { Ξεκινά το σώμα κάθε κλάσης Δεξιά αγκύλη τερματίζει τις δηλώσεις (γραμμή 13) ΠΡΟΣΟΧΗ!!!! Τι γίνεται όταν το όνομα του αρχείου.class είναι διαφορετικό από το όνομα της κλάσης που έχει δηλωθεί ως public μέσα στο αρχείο?

19 Καλή Προγραμματιστική Τεχνική Όταν πληκτρολογείτε μία αριστερή αγκύλη, {, στο πρόγραμμά σας, αμέσως πληκτρολογείστε και τη δεξιά αγκύλη, }, και μετά βάλτε τον κέρσορα μεταξύ των δύο αγκυλών και ξεκινείστε να γράφετε το σώμα. Έτσι αποφεύγετε λάθη αγκυλών που λείπουν.

20 7 public static void main( String args[] ) Όλες οι εφαρμογές στη Java ξεκινούν την εκτέλεσή τους σε μία main και περιέχουν μία ή περισσότερες μεθόδους Ακριβώς ΜΙΑ μέθοδος πρέπει να ονομάζεται main Οι μέθοδοι μπορούν να εκτελούν λειτουργίες και να επστρέφουν πληροφορία Το void σημαίνει ότι η main δεν επιστρέφει πληροφορία 8 { Η αριστερή αγκύλη ξεκινά το σώμα της δήλωσης μιας μεθόδου (εδώ της main) Τερματισμός με δεξιά αγκύλη } (γραμμή11)

21 9 System.out.println( "Welcome to Java Programming!" ); Δίνει οδηγία στον υπολογιστή να εκτελέσει μια λειτουργία Εκτυπώνει string χαρακτήρων String σειρά χαρακτήρων εντός διπλών εισαγωγικών Τα κενά εντός των strings δεν αγνοούνται από τον compiler System.out Στάνταρτ αντικείμενο εξόδου (output object) Εκτύπωση στο command window (δηλ. MS-DOS prompt) Η μέθοδος System.out.println - η println είναι μέθοδος του αντικειμένου System.out Εμφανίζει γραμμή κειμένου Το όρισμα μέσα σε παρενθέσεις Ως εντολή θα πρέπει να τερματίζει με ;

22 11 } // end method main Τερματίζει τη δήλωση της μεθόδου 13 } // end class Welcome Τερματίζει τη δήλωση της κλάσης Τα σχόλια διευκολύνουν την αναγνωσιμότητα και την παρακολούθηση του προγράμματος

23 Εκτύπωση μιας γραμμής κειμένου Μεταγλώττιση ενός προγράμματος javac Welcome.java Αν δεν υπάρχουν λάθη, δημιουργείται το αρχείο Welcome.class Περιέχει τα bytecodes που αντιστοιχούν στην εφαρμογή Τα bytecodes περνούν στο μεταφραστή της Java

24 Εκτύπωση μιας γραμμής κειμένου Εκτέλεση ενός προγράμματος java Welcome Ο μεταφραστής φορτώνει το αρχείο.class για την κλάση Welcome Η επέκταση.class παραλείπεται

25 You type this command to execute the application The program outputs Welcome to Java Programming! Executing Welcome in a Microsoft Windows Command Prompt window.

26 Τροποποίηση του πρώτου προγράμματος Τροποποίηση του πρώτου προγράμματος για να εκτυπώνει τα ίδια με πριν 9 System.out.print( "Welcome to " ); 10 System.out.println( "Java Programming!" ); Η γραμμή 9 εμφανίζει Welcome to με τον κέρσορα να παραμένει στη γραμμή Η γραμμή 10 εμφανίζει Java Programming! στην ίδια γραμμή με τον κέρσορα να πηγαίνει επόμενη

27 1 // Welcome2.java 2 // Printing a line of text with multiple statements. Τροποποίηση του πρώτου 3 4 προγράμματος public class Welcome2 { 5 6 // main method begins execution of Java application 7 public static void main( String args[] ) 8 { 9 System.out.print( "Welcome to " ); 10 System.out.println( "Java Programming!" ); } // end method main } // end class Welcome2 Η System.out.print διατηρεί τον κέρσορα στην ίδια γραμμή και η System.out.println συνεχίζει στην επόμενη Welcome to Java Programming!

28 Τροποποίηση του πρώτου προγράμματος Escape χαρακτήρες Backslash ( \ ) Σηματοδοτεί ειδικούς χαρακτήρες Newline characters (\n) Ερμηνεύονται ως ειδικοί χαρακτήρες από τις μεθόδους System.out.print και System.out.println Σημαίνει ότι ο κέρσορας θα πάει στην αρχή της επόμενης γραμμής 9 System.out.println( "Welcome\nto\nJava\nProgramming!" ); Σπάσιμο γραμμής στο \n

29 1 // Welcome3.java 2 // Printing a line of text with multiple statements. 3 Τροποποίηση του πρώτου 4 public class Welcome3 { 5 προγράμματος 6 // main method begins execution of Java application 7 public static void main( String args[] ) 8 { 9 System.out.println( "Welcome\nto\nJava\n Programming!" ); } // end method main } // end class Welcome3 Για κάθε ακολουθία \n μία νέα γραμμή είναι η έξοδος Welcome to Java Programming!

30 Χαρακτήρες διαφυγής...κατά τα γνωστά Escape sequence Description \n Newline. Position the screen cursor at the beginning of the next line. \t Horizontal tab. Move the screen cursor to the next tab stop. \r Carriage return. Position the screen cursor at the beginning of the current line do not advance to the next line. Any characters output after the carriage return overwrite the characters previously output on that line. \\ Backslash. Used to print a backslash character. \" Double quote. Used to print a double-quote character. For example, System.out.println( "\"in quotes\"" ); displays "in quotes"

31 Κενά White spaces Κενά, κενές γραμμές και tabs ονομάζονται συλλογικά white space και χρησιμοποιούνται για το διαχωρισμό λέξεων και συμβόλων σε ένα πρόγραμμα Extra white space αγνοείται, επομένως ένα έγκυρο Java πρόγραμμα μπορεί να γίνει formatted με πολλούς διαφορετικούς τρόπους Τα προγράμματα θα πρέπει να γράφονται με τέτοιο τρόπο έτσι ώστε να αυξάνεται η αναγνωσιμότητά τους

32 Εμφάνιση κειμένου με την printf System.out.printf Νέο χαρακτηριστικό στο J2SE 5.0 Εμφανίζει μορφοποιημένα τα δεδομένα Ακολουθία χαρακτήρων μορφής Σταθερό κείμενο Προσδιοριστικό μορφής % και ένας χαρακτήρας που αναπαριστά τον τύπο δεδομένων Π.χ. %s θέση για ακολουθία χαρακτήρων

33 Εμφάνιση κειμένου με την printf 1 // Welcome3a.java 2 // Printing multiple lines in a dialog box. 3 4 public class Welcome3a 5 { 6 // main method begins execution of Java application 7 public static void main( String args[] ) 8 { 9 System.out.printf( "%s\n%s\n", 10 "Welcome to", "Java Programming!" ); } // end method main } // end class Welcome3a System.out.printf εμφανίζει μορφοποιημένα τα δεδομένα Welcome to Java Programming!

34 Τύποι και μεταβλητές Είδη τιμών που μπορούν να αποθηκευτούν και να τις επεξεργαστεί κάποιος boolean: Truth value (true or false) int: Integer (0, 1, -47) double: Real number (3.14, 1.0, -2.1) String: Text ( hello, example ). Μεταβλητές Ονοματισμένη θέση που αποθηκεύει μία τιμή ενός τύπου. Ορισμός: TYPE NAME; Παράδειγμα:String foo;

35 Καταχώρηση (Assignment) Χρησιμοποιούμε = για να δώσουμε τιμή σε μεταβλητή Παράδειγμα: String foo; foo = IAP ; Μπορεί να συνδυαστεί με δήλωση τύπου Παράδειγμα: double badpi = 3.14; boolean ismarch = true;

36 Εμφάνιση κειμένου με μεταβλητή 1 // Welcome3b.java 2 // Printing variable value 3 4 public class Welcome3b 5 { 6 // main method begins execution of Java application 7 public static void main( String args[] ) 8 { 9 String foo= Welcome to Java Programming 10 System.out.println(foo); 11 foo= Something else ; 12 System.out.println(foo); 13 } // end method main } // end class Welcome3b Welcome to Java Programming Something else

37 Τελεστές Σύμβολα για απλούς υπολογισμούς Καταχώρηση: = Πρόσθεση: + Αφαίρεση: - Πολλαπλασιασμός: * Διαίρεση: / Σειρά εκτέλεσης πράξεων Standard κανόνες μαθηματικών: Παρενθέσεις Πολλαπλασιασμός και διαίρεση Πρόσθεση και αφαίρεση

38 Συνένωση ακολουθιών String Concatenation (+) String text = "hello" + " world"; text = text + " number " + 5; // text = "hello world number 5"

39 Μία δεύτερη εφαρμογή Java Πρόσθεση 2 ακέραιων αριθμών Χρήση της Scanner για ανάγνωση 2 ακέραιων από το χρήστη Χρήση printf για εμφάνιση του αθροίσματος των 2 τιμών Χρήση packages

40 1// Fig. 2.7: Addition.java 2// Addition program that displays the sum of two numbers. 3import java.util.scanner; // program uses class Scanner 4 Πρόσθεση 2 ακέραιων Η δήλωση import εισάγει την 5public class Addition κλάση Scanner από το πακέτο 6{ (package) java.util. 7 // main method begins execution of Java application 8 public static void main (String args[]) 9 { 10 // create Scanner to obtain input from command window 11 Scanner input = new Scanner(System.in); int number1; // first number to add 14 int number2; // second number to add 15 int sum; // sum of number1 and number System.out.print("Enter first integer: "); // prompt 18 number1 = input.nextint(); // read first number Δήλωση και αρχικοποίηση της μεταβλητής input, που είναι μία Scanner. Δήλωση μεταβλητών number1, number2 και sum. Διαβάζει έναν integer από το χρήστη και τον αναθέτει στη number1.

41 20 System.out.print( "Enter second integer: " ); //prompt 21 number2 = input.nextint(); // read second number from user sum = number1 + number2; // add numbers 24 Πρόσθεση 2 ακέραιων 25 System.out.printf( "Sum is %d\n", sum ); // display sum 26 στη number2. 27 } // end method main 28 29} // end class Addition Enter first integer: 45 Enter second integer: 72 Sum is 117 Εμφανίζει το sum με χρήση μορφοποιημένης εξόδου Διαβάζει έναν integer από το χρήστη και τον αναθέτει Υπολογίζει το άθροισμα των number1 και number2, και θέτει το αποτέλεσμα στη sum.

42 Πρόσθεση 2 ακέραιων 3 import java.util.scanner; // program uses class Scanner Δηλώσεις import Χρησιμοποιούνται από τον compiler για να προσδιορίζει και να εντοπίζει classes Του υποδεικνύει να φορτώσει την κλάση Scanner από το package java.util 5 public class Addition 6 { Έναρξη κλάσης public class Addition Το όνομα του αρχείου πρέπει να είναι Addition.java Γραμμές 8-9: ξεκινά η main

43 Αποφυγή λαθών Όλες οι δηλώσεις import πρέπει να εμφανίζονται πριν τη δήλωση της κλάσης στο αρχείο Διαφορετικά (π.χ. Στο σώμα δήλωσης ή μετά τη δήλωση της κλάσης) syntax error Αν ξεχάσουμε να συμπεριλάβουμε μια δήλωση import για μια κλάση που χρησιμοποιούμε στο πρόγραμμα Συνήθως cannot resolve symbol.

44 10 // create Scanner to obtain input from command window 11 Scanner input = new Scanner( System.in ); Πρόσθεση 2 ακέραιων Η input είναι αντικείμενο τύπου Scanner δίνει τη δυνατότητα στο πρόγραμμα να διαβάσει δεδομένα για χρήση Έχουμε δήλωση μεταβλητής Θέση στη μνήμη που αποθηκεύει μία τιμή Δήλωση με όνομα και τύπο πριν τη χρήση Με το = η input αποκτά ένα στιγμιότυπο της κλάσης Scanner Αυτή η έκφραση δημιουργεί ένα αντικείμενο της κλάσης Scanner που διαβάζει τα δεδομένα που πληκτρολογεί ο χρήστης Όνομα μεταβλητής: any valid identifier Declarations end with semicolons ; Initialize variable in its declaration Equal sign Standard input object System.in

45 Πρόσθεση 2 ακέραιων Δήλωση μεταβλητών number1, number2 και sum τύπου int int holds integer values (whole numbers): i.e., 0, -4, 97 Types float and double can hold decimal numbers Type char can hold a single character: i.e., x, $, \n, 7 int, float, double and char are primitive types Προσθήκη σχολίων για σκοπό των μεταβλητών 13 int number1; // first number to add 14 int number2; // second number to add 15 int sum; // second number to add Κλασικά, μπορούμε να δηλώσουμε πολλαπλές μεταβλητές του ίδιου τύπου μαζί int number1, // first number to add number2, // second number to add sum; // second number to add Χρήση διαχωριστή (comma)

46 Προσοχή Κατά συνθήκη, τα ονόματα των μεταβλητών ξεκινούν με πεζά γράμματα Και κάθε λέξη στο όνομα μετά την πρώτη λέξη ξεκινά με κεφαλαίο γράμμα Παράδειγμα firstnumber

47 Ορισμός Μεταβλητών Τύπος μεταβλητής Γενικά Όνομα_Μεταβλητής παραδείγματα int number1; float a, b, c = 5.5; boolean temp; char mychar = c ; Δήλωση και αρχικοποίηση μαζί

48 Οι βασικοί τύποι δεδομένων στη Java Τύποι Δεδομένων byte Ακέραιοι short, int, long Κινητής Υποδιαστολής float, double boolean Χαρακτήρες char

49 Τύποι Δεδομένων (με παραδείγματα) Literal Data Type 178 int 8864L long double D double F float 26.77e3 double c true false char boolean boolean

50 Primitive datatypes (integers) Πρωταρχικοί τύποι δεδομένων

51 Primitive datatypes (floating point)

52 Miscellaneous datatypes

53 Πρόσθεση 2 ακέραιων 17 System.out.print( "Enter first integer: " ); // prompt Καλείται ένα prompt κατευθύνει το χρήστη να κάνει μια λειτουργία Package java.lang 18 number1 = input.nextint(); // read first number from user Το αποτέλεσμα της κλήσης του nextint δίνεται στη number1 με χρήση του τελεστή ανάθεσης = Τελεστής ανάθεσης = δυαδικός τελεστής έχει δύο τελεστέους Η έκφραση στα δεξιά υπολογίζεται και ανατίθεται στη μεταβλητή στα αριστερά Δηλ: η number1 παίρνει την τιμή της input.nextint()

54 Προσοχή!!! Εξ ορισμού, το πακέτο (package) java.lang εισάγεται σε κάθε πρόγραμμα Java Επομένως, το java.lang είναι το μόνο package στο Java API που δε χρειάζεται δήλωση import

55 Πρόσθεση 2 ακέραιων 20 System.out.print( "Enter second integer: " ); // prompt Ομοίως με πριν για το δεύτερο ακέραιο 21 number2 = input.nextint(); // read second number from user Ομοίως με πριν, αναθέτει στη number2 τον δεύτερο εισαχθέντα ακέραιο 23 sum = number1 + number2; // add numbers Δήλωση ανάθεσης Υπολογίζει το άθροισμα των number1 και number2 (right hand side) Χρήση τελεστή ανάθεσης = για ανάθεση αποτελέσματος στη μεταβλητή sum Δηλ.: Η sum παίρνει την τιμή του number1 + number2

56 Πρόσθεση 2 ακέραιων 25 System.out.printf( "Sum is %d\n: ", sum ); // display sum Χρήση System.out.printf για εμφάνιση αποτελεσμάτων Χρήση %d για μορφοποίηση σε int System.out.printf( "Sum is %d\n: ", ( number1 + number2 ) ); Οι υπολογισμοί μπορούν να γίνουν εντός της printf Οι παρενθέσεις για την έκφραση number1 + number2 δεν είναι απαραίτητες Άσκηση! Αντίστοιχα με την πρόσθεση 2 ακεραίων, γράψτε ένα ολοκληρωμένο πρόγραμμα που υπολογίζει και προβάλει το γινόμενο τριών ακεραίων!

57 Διαίρεση Η διαίρεση ( / ) λειτουργεί διαφορετικά σε integers και doubles! Παράδειγμα: double a = 5.0/2.0; int b = 4/2; int c = 5/2; double d = 5/2; // a = 2.5 // b = 2 // c = 2 // d = 2.0

58 Προτεραιότητα πράξεων Από αριστερά προς δεξιά Το δεξί μέρος του = υπολογίζεται πρώτα Παράδειγμα: double x = 3 / 2 + 1; double y = 3 / (2 + 1); // x = 2.0 // y = 1.0

59 Mismatched Types Η Java πάντα ελέγχει ότι οι τύπου ταιριάζουν: String five = 5; // ERROR! test.java.2: incompatible types found: int required: java.lang.string String five = 5;

60 Μετατροπή με casting int a = 2; // a = 2 double a = 2; // a = 2.0 (Implicit) int a = 18.7; // ERROR int a = (int)18.7; // a = 18 double a = 2/3; // a = 0.0 double a = (double)2/3; // a =

61 Methods

62 Προσθήκη μεθόδων public static void NAME() { } STATEMENTS Για την κλήση μιας μεθόδου: NAME();

63 Προσθήκη μεθόδων class NewLine { public static void newline() { System.out.println(""); } public static void threelines() { } newline(); newline(); newline(); } public static void main(string[] arguments){ System.out.println("Line 1"); threelines(); System.out.println("Line 2"); }

64 Παράμετροι public static void NAME(TYPE NAME) { } STATEMENTS Για την κλήση: NAME(EXPRESSION);

65 Προσθήκη μεθόδων class Square { public static void printsquare(int x){ System.out.println(x*x); } } public static void main(string[] arguments){ int value = 2; printsquare(value); printsquare(3); printsquare(value*2); }

66 What s wrong here? class Square2 { public static void printsquare(int x){ System.out.println(x*x); } } public static void main(string[] arguments){ printsquare( hello ); printsquare(5.5); }

67 Πολλαπλές παράμετροι [ ] NAME(TYPE NAME, TYPE NAME) { } STATEMENTS Για την κλήση: NAME(ΑRG1, ARG2);

68 Προσθήκη μεθόδων class Multiply { public static void times (int a, int b){ System.out.println(a * b); } } public static void main(string[] arguments){ times (2, 2); times (3, 4); }

69 Τιμές επιστροφής public static TYPE NAME( ) { STATEMENTS return EXPRESSION; } void: σημαίνει no type

70 Τιμές επιστροφής class Square3 { public static void printsquare(int x){ System.out.println(x*x); } } public static void main(string[] arguments){ } printsquare(5);

71 Τιμές επιστροφής class Square4 { public static double square(int x){ return x*x; } } public static void main(string[] arguments){ } System.out.println(square(5)); System.out.println(square(2));

72 Methods: Building Blocks Τα μεγάλα προγράμματα χτίζονται με μικρές μεθόδους Οι μέθοδοι μπορούν να αναπτυχθούν, ελεγχθούν και ξαναχρησιμοποιηθούν ανεξάρτητα Ο χρήστης της μεθόδου δεν χρειάζεται να ξέρει πώς δουλεύει! Αυτό στην Επιστήμη των Υπολογιστών, ονομάζεται abstraction (αφαίρεση)

73 Εμφάνιση κειμένου σε παράθυρο διαλόγου Εμφάνιση Οι περισσότερες εφαρμογές Java χρησιμοποιούν παράθυρα ή dialog boxes Μέχρι τώρα χρησιμοποιήσαμε παράθυρο εντολών Η κλάση JOptionPane επιτρέπει τη χρήση Η JOptionPane βρίσκεται στο πακέτο javax.swing Το πακέτο γενικά περιέχει κλάσεις για τη χρήση γραφικών διεπαφών χρήστη (Graphical User Interfaces GUIs)

74 1 // Welcome4.java 2 // Printing multiple lines in a dialog box. 3 Εμφάνιση κειμένου σε 4 // Java packages 5 import javax.swing.joptionpane; // program uses JOptionPane παράθυρο διαλόγου 6 7 public class Welcome4 { 8 9 // main method begins execution of Java application 10 public static void main( String args[] ) 11 { 12 JOptionPane.showMessageDialog( 13 null, "Welcome\nto\nJava\nProgramming!" ); System.exit( 0 ); // terminate application with window } // end method main } // end class Welcome4

75 Εμφάνιση κειμένου σε παράθυρο διαλόγου 4 // Java packages 2 ομάδες πακέτων στο Java API Core packages Ξεκινούν με java Extension packages Ξεκινούν με javax 5 import javax.swing.joptionpane; // program uses OptionPane import δήλωση Όπως είπαμε χρησιμοποιείται από τον compiler για να αναγνωρίσει και να εντοπίσει κλάσεις Εδώ λέει στον compiler να φορτώσει την κλάση JOptionPane από το πακέτο javax.swing

76 Εμφάνιση κειμένου σε παράθυρο διαλόγου 12 JOptionPane.showMessageDialog( 13 null, "Welcome\nto\nJava\nProgramming!" ); Κλήση μεθόδου showmessagedialog της κλάσης JOptionPane Απαιτεί 2 ορίσματα Πολαπλλά ορίσματα χωρίζονται με (,) Για την ώρα, το 1ο όρισμα θα είναι πάντα null Το 2ο όρισμα είναι το string προς εμφάνιση Η showmessagedialog είνα μία static μέθοδος τη κλάσης JOptionPane Κλήση με το όνομα της κλάσης, τελεία (dot.) και μετά το όνομα της μεθόδου Δεν χρειάζεται στιγμιότυπο της κλάσης

77 Εμφάνιση κειμένου σε παράθυρο διαλόγου Η εκτέλεση των γραμμών 12 και 13 εμφανίζει το dialog box Αυτόματα περιλαμβάνει το κουμπί ΟΚ (OK button) Κρύβει το dialog box Ο τίτλος του παραθύρου έχει το string Message

78 Εμφάνιση κειμένου σε παράθυρο διαλόγου 15 System.exit( 0 ); // terminate application with window Καλεί τη static μέθοδο exit της κλάσης System Τερματίζει την εφαρμογή Χρήση με κάθε εφαρμογή που εμφανίζει ένα GUI Το όρισμα 0 σημαίνει ότι η εφαρμογή τερματίστηκε επιτυχώς Συνήθως αν είναι μη-μηδέν σημαίνει ότι συνέβη κάποιο σφάλμα ΕΡΩΤΗΣΗ: Σε ποιο πακέτο βρίσκεται η System??? ΑΠΑΝΤΗΣΗ: Η κλάση System ανήκει στο πακέτο java.lang Δε χρειάζεται δήλωση import Το java.lang εισάγεται (imported) φορτώνεται αυτόματα σε κάθε πρόγραμμα Java

79 Άλλο ένα παράδειγμα: πρόσθεση ακεραίων Χρήση input dialogs για εισαγωγή 2 τιμών από το χρήστη με τη χρήση της μεθόδου JOptionPane.showInputDialog Χρήση message dialog για εμφάνιση του αθροίσματος των δύο τιμών με τη χρήση της μεθόδου JOptionPane.showMessageDialog

80 1 // AdditionΑ.java 2 // Addition program that displays the sum of two numbers. 3 4 Άλλο // Java packages ένα παράδειγμα: 5 import javax.swing.joptionpane; // program uses JOptionPane 6 7 public class AdditionΑ { πρόσθεση ακεραίων 8 9 // main method begins execution of Java application 10 public static void main( String args[] ) 11 { 12 String firstnumber; // first string entered by user 13 String secondnumber; // second string entered by user int number1; // first number to add 16 int number2; // second number to add 17 int sum; // sum of number1 and number // read in first number from user as a String 20 firstnumber = JOptionPane.showInputDialog( "Enter first integer" ); // read in second number from user as a String 23 secondnumber = 24 JOptionPane.showInputDialog( "Enter second integer" ); // convert numbers from type String to type int 27 number1 = Integer.parseInt( firstnumber ); 28 number2 = Integer.parseInt( secondnumber ); // add numbers 31 sum = number1 + number2; 32 Πρόσθεση, τοποθέτηση του αποτελέσματος στη sum. Δήλωση μεταβλητών : όνομα και τύπος Εισαγωγή 1 ου ακέραιου ως String, ανάθεση στον firstnumber. 04/04/2008 Αντικειμενοστρεφής Προγραμματισμός Μετατροπή strings σε integers. Τμήμα Διδακτικής της Τεχνολογίας & Ψηφιακών Συστημάτων

81 33 // display result 34 JOptionPane.showMessageDialog( null, "The sum is " + sum, Άλλο ένα παράδειγμα: 35 "Results", JOptionPane.PLAIN_MESSAGE ); 36 πρόσθεση ακεραίων 37 System.exit( 0 ); // terminate application with window } // end method main } // end class AdditionΑ

82 Άλλο ένα παράδειγμα: πρόσθεση ακεραίων 5 import javax.swing.joptionpane; // program uses JOptionPane Θέση της JOptionPane για χρήση από το πρόγραμμα 7 public class AdditionΑ { Εκκίνηση public κλάσης AdditionΑ ΘΥΜΗΘΕΙΤΕ ότι το όνομα του αρχείου πρέπει να είναι AdditionΑ.java 12 String firstnumber; // first string entered by user 13 String secondnumber; // second string entered by user Δήλωση firstnumber και secondnumber είναι μεταβλητές

83 Άλλο ένα παράδειγμα: πρόσθεση ακεραίων 12 String firstnumber; // first string entered by user 13 String secondnumber; // second string entered by user Μεταβλητές Θέση στη μνήμη που αποθηκεύει μια τιμή Declare with name and type before use Οι firstnumber και secondnumber είναι τύπου String (package java.lang) Κρατά strings Όνομα μεταβλητής: ο,τιδήποτε Οι δηλώσεις τερματίζουν με ;

84 Άλλο ένα παράδειγμα: πρόσθεση ακεραίων 15 int number1; // first number to add 16 int number2; // second number to add 17 int sum; // sum of number1 and number2 Δηλώσεις μεταβλητών int holds integer values

85 Άλλο ένα παράδειγμα: πρόσθεση ακεραίων 20 firstnumber = JOptionPane.showInputDialog( "Enter first integer" ); Διαβάζει ένα String από το χρήστη, που αντιστοιχεί στον πρώτο προσθετέο Η μέθοδος JOptionPane.showInputDialog εμφανίζει το ακόλουθο: Καλείται ένα prompt κατευθύνει το χρήστη να κάνει μια ενέργεια Το όρισμα εμφανίζεται ως κείμενο στο prompt Αν εισαχθεί λάθος τύπος δεδομένων (π.χ. non-integer) ή πατήσουμε Cancel, συμβαίνει σφάλμα

86 Άλλο ένα παράδειγμα: πρόσθεση ακεραίων 20 firstnumber = JOptionPane.showInputDialog( "Enter first integer" ); Το αποτέλεσμα της κλήσης showinputdialog δίνεται στο firstnumber με χρήση του τελεστή = Δηλ.: Ο firstnumber παίρνει την τιμή που επιστρέφει η JOptionPane.showInputDialog( "Enter first integer" )

87 Άλλο ένα παράδειγμα: πρόσθεση ακεραίων 23 secondnumber = 24 JOptionPane.showInputDialog( "Enter second integer" ); Όπως πριν για τον secondnumber 27 number1 = Integer.parseInt( firstnumber ); 28 number2 = Integer.parseInt( secondnumber ); Μέθοδος Integer.parseInt Μετατρέπει το όρισμα String σε έναν ακέραιο (type int) Η κλάση Integer είναι στο πακέτο java.lang Ο ακέραιος που επιστρέφεται από την κλήση Integer.parseInt ανατίθεται στη μεταβλητή number1 (line 27) Θυμηθείτε ότι για number1 δηλώθηκε ως type int Ομοίως για τη γραμμή 28

88 Άλλο ένα παράδειγμα: πρόσθεση ακεραίων 31 sum = number1 + number2; Προφανές

89 Άλλο ένα παράδειγμα: πρόσθεση ακεραίων 34 JOptionPane.showMessageDialog( null, "The sum is " + sum, 35 "Results", JOptionPane.PLAIN_MESSAGE ); Χρήση της showmessagedialog για εμφάνιση αποτελεσμάτων "The sum is " + sum Χρησιμοποιεί τον τελεστή + για να «προσθέσει-ενώσει» τα "The sum is" και sum Αλληλουχία (Concatenation) ενός String και ενός άλλου τύπου Αποτέλεσμα = νέο string Αν η sum περιέχει το 117, τότε "The sum is " + sum δίνει το νέο string "The sum is 117" Προσοχή στο κενό (space) στο "The sum is "

90 Άλλο ένα παράδειγμα: πρόσθεση ακεραίων 34 JOptionPane.showMessageDialog( null, "The sum is " + sum, 35 "Results", JOptionPane.PLAIN_MESSAGE ); Άλλη έκδοση της showmessagedialog Απαιτεί 4 ορίσματα (αντί για 2 όπως πριν) 1 ο όρισμα: για τώρα null 2 ο όρισμα: string προς εμφάνιση 3 ο όρισμα: string στο title bar 4 ο όρισμα: τύπος μηνύματος με ή χωρίς εικόνα (icon) Γραμμή Line 35 χωρίς εικόνα : JOptionPane.PLAIN_MESSAGE

91 Άλλο ένα παράδειγμα: πρόσθεση ακεραίων

92 Πηγές/Acknowledgements H. M. Deitel, P. J. Deitel, Java Προγραμματισμός, 6η έκδοση, Μ. Γκιούρδας, 2006 D. Barnes, M. Kolling, Αντικειμενοστρεφής Προγραμματισμός σε Java, Κλειδάριθμος, 2008 Βασίλης Χριστοφίδης, Αντικειμενοστρεφής Προγραμματισμός, Πανεπιστήμιο Κρήτης Κ. Τσαγκάρης, Εισαγωγή στις εφαρμογές της Java, Πανεπιστήμιο Πειραιώς Jones, Evan, Adam Marcus, and Eugene Wu Introduction to Programming in Java,January IAP (Massachusetts Institute of Technology: MIT OpenCourseWare), (Accessed 10 Mar, 2013). License: Creative Commons BY-NC-SA

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

Αντικειμενοστρεφής Προγραμματισμός Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Αντικειμενοστρεφής Προγραμματισμός 5/3/2018 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Εμφάνιση κειμένου με την printf System.out.printf

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

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

Αντικειμενοστρεφής Προγραμματισμός Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Αντικειμενοστρεφής Προγραμματισμός 4/3/2019 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Βασικό λεξιλόγιο Μία ενότητα κώδικα, ένα πρόγραμμα

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

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

Αντικειμενοστρεφής Προγραμματισμός Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Αντικειμενοστρεφής Προγραμματισμός 3/4/2017 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Γιατί έλεγχος πρόσβασης? Προστασία ιδιωτικής πληροφορίας

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

4. Εισαγωγή στη Java

4. Εισαγωγή στη Java ΠΠΜ 401 - Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής 4. Εισαγωγή στη Java Χειμερινό εξάμηνο 2014 Πέτρος Κωμοδρόμος komodromos@ucy.ac.cy http://www.eng.ucy.ac.cy/petros 1 Θέματα Εισαγωγή στη γλώσσα προγραμματισμού

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

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07 ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 25/10/07 Αριθμητική στο δυαδικό σύστημα (γενικά) Συμπληρωματικά για δυαδικό σύστημα Η πρόσθεση στηρίζεται στους κανόνες: 0 + 0 = 0, 0 + 1 = 1, 1

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

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

Αντικειμενοστρεφής Προγραμματισμός Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Αντικειμενοστρεφής Προγραμματισμός 16/4/2018 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Τύποι της Java Primitives vs References Οι πρωταρχικοί

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

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

Αντικειμενοστρεφής Προγραμματισμός Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Αντικειμενοστρεφής Προγραμματισμός 23/4/2018 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Υπερφόρτωση μεθόδων Υπερφόρτωση μεθόδων Πολλαπλές

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

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

Αντικειμενοστρεφής Προγραμματισμός Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Αντικειμενοστρεφής Προγραμματισμός 18/4/216 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Τύποι της Java Primitives vs References Οι πρωταρχικοί

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

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

Αντικειμενοστρεφής Προγραμματισμός Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Αντικειμενοστρεφής Προγραμματισμός 30/5/2016 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Συλλογή απορριμμάτων Συλλογή απορριμμάτων (Garbage

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

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

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

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

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

Αντικειμενοστρεφής Προγραμματισμός Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Αντικειμενοστρεφής Προγραμματισμός 30/5/2016 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Χειρισμός Εξαιρέσεων Εξαίρεση (Exception) ένδειξη

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

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

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

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

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

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

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

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

Αντικειµενοστρεφής Προγραµµατισµός 16 η διάλεξη Π. Σταθοπούλου pstath@ece.upatras.gr ή pstath@upatras.gr Οµάδα Α (Φοιτητές µε µονό αριθµό Μητρώου ) ιδασκαλία : Παρασκευή 11πµ-13µµ ΗΛ7 Φροντιστήριο : ευτέρα 11πµ-12πµ ΗΛ4 Προηγούµενη ιάλεξη

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

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

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

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

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 2 : ΜΕΤΑΒΛΗΤΕΣ ΤΕΛΕΣΤΕΣ & ΕΚΦΡΑΣΕΙΣ ΕΛΕΓΧΟΣ ΡΟΗΣ

Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 2 : ΜΕΤΑΒΛΗΤΕΣ ΤΕΛΕΣΤΕΣ & ΕΚΦΡΑΣΕΙΣ ΕΛΕΓΧΟΣ ΡΟΗΣ Αντικειμενοστρεφής Προγραμματισμός Διάλεξη 2 : ΜΕΤΑΒΛΗΤΕΣ ΤΕΛΕΣΤΕΣ & ΕΚΦΡΑΣΕΙΣ ΕΛΕΓΧΟΣ ΡΟΗΣ Κων. Κόκκινος Μεταβλητές-1 Οι μεταβλητές αποτελούν θέσεις μνήμης στις οποίες αποθηκεύονται τιμές αντίστοιχες

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

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

Αντικειμενοστρεφής Προγραμματισμός Αντικειμενοστρεφής Προγραμματισμός Διδάσκουσα: Αναπλ. Καθηγήτρια Ανδριάνα Πρέντζα aprentza@unipi.gr Εργαστηριακός Συνεργάτης: Δρ. Βασιλική Κούφη vassok@unipi.gr Εργαστήριο 2 Βασικοί Τύποι Μεταβλητών Java

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

Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή

Στόχοι και αντικείμενο ενότητας. Εκφράσεις. Η έννοια του τελεστή. #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Η έννοια του Τελεστή Στόχοι και αντικείμενο ενότητας Η έννοια του Τελεστή #2.. Εισαγωγή στη C (Μέρος Δεύτερο) Εκφράσεις Προτεραιότητα Προσεταιριστικότητα Χρήση παρενθέσεων Μετατροπές Τύπων Υπονοούμενες και ρητές μετατροπές

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

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java II ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java II Strings Η κλάση String είναι προκαθορισμένη κλάση της Java που μας επιτρέπει να χειριζόμαστε αλφαριθμητικά. Ο τελεστής + μας επιτρέπει

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

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java Ιστορία Ο Patrick Naughton απειλεί την Sun ότι θα φύγει. Τον βάζουν σε μία ομάδα αποτελούμενη από τους James Gosling και Mike Sheridan για

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

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

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

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

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

Αντικειμενοστραφής Προγραμματισμός Αντικειμενοστραφής Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Ενότητα 2: Τύποι δεδομένων, μεταβλητές, τελεστές και παραστάσεις. Δρ. Χαράλαμπος Ζ. Πατρικάκης

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

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

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

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

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

Αντικειμενοστρεφής Προγραμματισμός Αντικειμενοστρεφής Προγραμματισμός Διδάσκουσα: Αναπλ. Καθηγήτρια Ανδριάνα Πρέντζα aprentza@unipi.gr Εργαστηριακός Συνεργάτης: Δρ. Βασιλική Κούφη vassok@unipi.gr 1 Δομημένος προγραμματισμός έναντι αντικειμενοστρεφούς

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

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #1 ο : Εισαγωγή στο Περιβάλλον Ανάπτυξης (IDE)

Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #1 ο : Εισαγωγή στο Περιβάλλον Ανάπτυξης (IDE) Αντικειμενοστραφής Προγραμματισμός I (5 ο εξ) Εργαστήριο #1 ο : Εισαγωγή στο Περιβάλλον Ανάπτυξης (IDE) NetBeans, Πρώτα παραδείγματα ανάπτυξης Java εφαρμογών Γαβαλάς Δαμιανός dgavalas@aegean.gr Στόχοι

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

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

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

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Υπάρχουσες κλάσεις και αντικείμενα στην Java Strings Wrapper Classes Δομές

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Υπάρχουσες κλάσεις και αντικείμενα στην Java Strings Wrapper Classes Δομές ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Υπάρχουσες κλάσεις και αντικείμενα στην Java Strings Wrapper Classes Δομές ΚΛΑΣΕΙΣ ΚΑΙ ΑΝΤΙΚΕΙΜΕΝΑ Κλάση Μια κλάση είναι μία αφηρημένη περιγραφή αντικειμένων

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι 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

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

Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #1 ο : Εισαγωγή στο Περιβάλλον Ανάπτυξης (IDE)

Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #1 ο : Εισαγωγή στο Περιβάλλον Ανάπτυξης (IDE) Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #1 ο : Εισαγωγή στο Περιβάλλον Ανάπτυξης (IDE) NetBeans, Πρώτα παραδείγματα ανάπτυξης Java εφαρμογών Στόχοι εργαστηρίου Εξοικείωση με τις βασικές

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

ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 2: Βασικές εντολές

ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 2: Βασικές εντολές ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 2: Βασικές εντολές Μιχάλης Δρακόπουλος Σχολή Θετικών επιστημών Τμήμα Μαθηματικών ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (Java) Ενότητα 2 Είσοδος από το πληκτρολόγιο: 1) Προσθήκη απαραίτητης βιβλιοθήκης

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

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java Ιστορία Ο Patrick Naughton απειλεί την Sun ότι θα φύγει. Τον βάζουν σε μία ομάδα αποτελούμενη από τους James Gosling και Mike Sheridan για

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

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Μέθοδοι Παράδειγμα 1 Θέλουμε ένα πρόγραμμα που να προσομοιώνει την κίνηση ενός αυτοκινήτου, το οποίο κινείται και τυπώνει τη θέση του.

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη 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 Παύλος Εφραιμίδης Java Βασικά Στοιχεία της γλώσσας Java 1 Τύποι Δεδομένων Η Java έχει δύο κατηγορίες τύπων δεδομένων: πρωτογενείς (primitive) τύπους δεδομένων αναφορές Java Βασικά

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

Εισαγωγή στον αντικειμενοστραφή προγραμματισμό με τη Java

Εισαγωγή στον αντικειμενοστραφή προγραμματισμό με τη Java Προχωρημένος Προγραμματισμός Εισαγωγή στον αντικειμενοστραφή προγραμματισμό με τη Java ΕΛΕΥΘΕΡΙΟΣ ΚΟΣΜΑΣ ΧΕΙΜΕΡΙΝΟ ΕΞΑΜΗΝΟ 2018-2019 ΤΜΗΜΑ ΗΛΕΚΤΡΟΛΟΓΩΝ ΜΗΧΑΝΙΚΩΝ Τ.Ε. 1 Περίληψη Σήμερα... θα παρουσιάσουμε

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

8. Μέθοδοι (Methods)

8. Μέθοδοι (Methods) 8. Μέθοδοι (Methods) Χειμερινό εξάμηνο 2012 Πέτρος Κωμοδρόμος komodromos@ucy.ac.cy http://www.eng.ucy.ac.cy/petros 1 Θέματα Μέθοδοι που παρέχονται από τη τάξη Math του Java API Χρήση στατικών μεθόδων και

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

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης

Η πρώτη παράμετρος είναι ένα αλφαριθμητικό μορφοποίησης Η συνάρτηση printf() Η συνάρτηση printf() χρησιμοποιείται για την εμφάνιση δεδομένων στο αρχείο εξόδου stdout (standard output stream), το οποίο εξ ορισμού συνδέεται με την οθόνη Η συνάρτηση printf() δέχεται

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

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

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

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

Εισαγωγή στη JAVA. Εισαγωγή στη Java. Η Java είναι δημιούργημα της SUN MICROSYSTEMS.

Εισαγωγή στη JAVA. Εισαγωγή στη Java. Η Java είναι δημιούργημα της SUN MICROSYSTEMS. Εισαγωγή στη JAVA Σύντομο Ιστορικό Η Java και το διαδίκτυο Το πρώτο απλό πρόγραμμα σε JAVA Μεταβλητές και σταθερές Παραστάσεις και εντολές Οι βασικοί τύποι δεδομένων στη Java Οι βασικοί Τελεστές στη Java

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

Το πρόγραμμα 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 υποστηρίζει

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

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

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

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

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

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Συναρτήσεις Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Συναρτήσεις Ως τώρα γράφαμε όλα τα προγράμματα μας μέσα στην main..1

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

Προγραμματισμός Η/Υ. Ενότητα 2β: Εισαγωγή στη C (Μέρος Δεύτερο)

Προγραμματισμός Η/Υ. Ενότητα 2β: Εισαγωγή στη C (Μέρος Δεύτερο) Προγραμματισμός Η/Υ Ενότητα 2β: Νίκος Καρακαπιλίδης, Καθηγητής Δημήτρης Σαραβάνος, Καθηγητής Πολυτεχνική Σχολή Τμήμα Μηχανολόγων & Αεροναυπηγών Μηχανικών Σκοποί ενότητας Κατανόηση της έννοιας του Τελεστή

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

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

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

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

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

2.1 Αντικειµενοστρεφής προγραµµατισµός 2.1 Αντικειµενοστρεφής προγραµµατισµός Στον αντικειµενοστρεφή προγραµµατισµό (object oriented programming, OOP) ένα πρόγραµµα υπολογιστή είναι ένα σύνολο αλληλεπιδρώντων αντικειµένων. Μπορεί να ειπωθεί

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

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Μέθοδοι Παράδειγμα 1 Θέλουμε ένα πρόγραμμα που να προσομοιώνει την κίνηση ενός αυτοκινήτου, το οποίο κινείται πάνω σε μία ευθεία πάντα

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

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

Αντικειμενοστρεφής Προγραμματισμός Πανεπιστήμιο Πειραιά Τμήμα Ψηφιακών Συστημάτων Αντικειμενοστρεφής Προγραμματισμός 03/04/2017 Δρ. Ανδριάνα Πρέντζα Αναπληρώτρια Καθηγήτρια aprentza@unipi.gr Static πεδία και μέθοδοι Τα περισσότερα δεδομένα

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

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Κλάσεις και Αντικείμενα Μέθοδοι ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα Μέθοδοι Παράδειγμα 1 Θέλουμε ένα πρόγραμμα που να προσομοιώνει την κίνηση ενός αυτοκινήτου, το οποίο κινείται πάνω σε μία ευθεία πάντα

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

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

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

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

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος

Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος Διάλεξη 3η: Τύποι Μεταβλητών, Τελεστές, Είσοδος/Έξοδος Τμήμα Επιστήμης Υπολογιστών, Πανεπιστήμιο Κρήτης Εισαγωγή στην Επιστήμη Υπολογιστών Βασίζεται σε διαφάνειες του Κ Παναγιωτάκη Πρατικάκης (CSD) Μεταβλητές,

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

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

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

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

Η γλώσσα προγραμματισμού C

Η γλώσσα προγραμματισμού C Η γλώσσα προγραμματισμού C Εισαγωγή στη C Λίγα λόγια για την C Γλώσσα προγραμματισμού υψηλού επιπέδου. Σχεδιάστηκε και υλοποιήθηκε από τον Dennis Richie στις αρχές της δεκαετίας του 1970 (Bell Labs). Η

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

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

Εισαγωγή στον Αντικειμενοστρεφή Προγραμματισμό Διάλεξη #2 Ανασκόπηση Μια εφαρμογή Java είναι ένα σύνολο από συνεργαζόμενες κλάσεις Διάλεξη #2: Αντικείμενα, Κλάσεις και Μέθοδοι Εισαγωγή στον Αντικειμενοστρεφή Προγραμματισμό,, Slide 1 Εισαγωγή στον Αντικειμενοστρεφή

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

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Δημιουργία Κλάσεων και Αντικειμένων ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Δημιουργία Κλάσεων και Αντικειμένων Κλάση Μια κλάση είναι μία αφηρημένη περιγραφή αντικειμένων με κοινά χαρακτηριστικά και κοινή συμπεριφορά. Ένα καλούπι/πρότυπο

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

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

Προγραμματισμός Ι. Δυναμική Διαχείριση Μνήμης. Δημήτρης Μιχαήλ. Ακ. Έτος 2011-2012. Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Προγραμματισμός Ι Δυναμική Διαχείριση Μνήμης Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2011-2012 Ανάγκη για Δυναμική Μνήμη Στατική Μνήμη Μέχρι τώρα χρησιμοποιούσαμε

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

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python

ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ. Εισαγωγή στη Python ΠΑΝΕΠΙΣΤΗΜΙΟ AΙΓΑIΟΥ & ΑΕΙ ΠΕΙΡΑΙΑ Τ.Τ. Τμήματα Ναυτιλίας και Επιχειρηματικών Υπηρεσιών & Μηχ. Αυτοματισμού ΤΕ ΠΛΗΡΟΦΟΡΙΚΗ ΤΕΧΝΟΛΟΓΙΑ ΚΑΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Η/Υ Εισαγωγή στη Python Νικόλαος Ζ. Ζάχαρης Αναπληρωτής

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

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

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

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

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java Η εξέλιξη των γλωσσών προγραμματισμού Η εξέλιξη των γλωσσών προγραμματισμού είναι μια διαδικασία αφαίρεσης Στην αρχή ένα πρόγραμμα ήταν μια

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

Γλώσσα Προγραμματισμού C++ Εισαγωγή - Μια πρώτη ματιά

Γλώσσα Προγραμματισμού C++ Εισαγωγή - Μια πρώτη ματιά Γλώσσα Προγραμματισμού C++ Εισαγωγή - Μια πρώτη ματιά Βασικά χαρακτηριστικά αναπτύχθηκε ως επέκταση της C το 1979 υπερσύνολο της C γλώσσα γενικού σκοπού, γρήγορη, Αντικειμενοστραφής προγραμματισμός (Object

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη 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

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

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

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

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

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού

Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού ΕΘΝΙΚΟ ΜΕΤΣΟΒΙΟ ΠΟΛΥΤΕΧΝΕΙΟ ΣΧΟΛΗ ΧΗΜΙΚΩΝ ΜΗΧΑΝΙΚΩΝ ΥΠΟΛΟΓΙΣΤΙΚΟ ΚΕΝΤΡΟ Προγραμματισμός και Χρήση Ηλεκτρονικών Υπολογιστών - Βασικά Εργαλεία Λογισμικού Μάθημα 2ο Aντώνης Σπυρόπουλος v2_061015 Οροι που

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

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

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

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

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java Ιστορία Ο Patrick Naughton απειλεί την Sun ότι θα φύγει. Τον βάζουν σε μία ομάδα αποτελούμενη από τους James Gosling και Mike Sheridan για

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

Κεφάλαιο 2.6: Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου. (Διάλεξη 7) Είσοδος/ Έξοδος

Κεφάλαιο 2.6: Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου. (Διάλεξη 7) Είσοδος/ Έξοδος Κεφάλαιο 2.6: Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου (Διάλεξη 7) 1 Είσοδος/ Έξοδος Σε σχεδόν όλα τα προγράμματα πρέπει να πάρουμε κάποια δεδομένα και να δώσουμε αποτέλεσμα Συνάρτηση εισόδου

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

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

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

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

Δημιουργία μιας εφαρμογής Java με το NetBeans

Δημιουργία μιας εφαρμογής Java με το NetBeans Δημιουργία μιας εφαρμογής Java με το NetBeans Για να δημιουργήσετε μια εφαρμογή Java πρέπει να ακολουθήσετε τα εξής βήματα : Αρχικά πρέπει να δημιουργηθεί ένα project το οποίο θα περιέχει όλα τα αρχεία

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

Κεφάλαιο 2.6: Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου. (Διάλεξη 7)

Κεφάλαιο 2.6: Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου. (Διάλεξη 7) Κεφάλαιο 2.6: Είσοδος / Έξοδος Δεδομένων, Μορφοποίηση Δεδομένων Εξόδου (Διάλεξη 7) 1 Είσοδος/Έξοδος Σε σχεδόν όλα τα προγράμματα πρέπει να πάρουμε κάποια δεδομένα και να δώσουμε αποτέλεσμα Συνάρτηση εισόδου

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

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java III ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java III Ισότητα Strings class StringTest public static void main(string args[]) String x1 = "java"; String y1 = "java"; System.out.println("1.

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

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

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Αριθμητική Δημήτρης Μιχαήλ Τμήμα Πληροφορικής και Τηλεματικής Χαροκόπειο Πανεπιστήμιο Ακ. Έτος 2012-2013 Δεύτερο Πρόγραμμα 1 / * Second Simple Program : add 2 numbers * / 2

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

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

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

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

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

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

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

ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ

ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ ΑΣΚΗΣΗ 2: ΔΟΜΗ ΠΡΟΓΡΑΜΜΑΤΟΣ C, ΧΕΙΡΙΣΜΟΣ ΜΕΤΑΒΛΗΤΩΝ ΚΑΙ ΣΥΝΑΡΤΗΣΕΙΣ ΕΙΣΟΔΟΥ ΚΑΙ ΕΞΟΔΟΥ Σκοπός της Άσκησης Ο σκοπός αυτής της εργαστηριακής άσκησης είναι η ανάλυση των βασικών χαρακτηριστικών της Γλώσσας

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

Κεφάλαιο 2.6: Είσοδος / Έξοδος εδοµένων, Μορφοποίηση εδοµένων Εξόδου. ( ιάλεξη 7) ιδάσκων: ηµήτρης Ζεϊναλιπούρ

Κεφάλαιο 2.6: Είσοδος / Έξοδος εδοµένων, Μορφοποίηση εδοµένων Εξόδου. ( ιάλεξη 7) ιδάσκων: ηµήτρης Ζεϊναλιπούρ Κεφάλαιο 2.6: Είσοδος / Έξοδος εδοµένων, Μορφοποίηση εδοµένων Εξόδου ( ιάλεξη 7) ιδάσκων: ηµήτρης Ζεϊναλιπούρ 1 Είσοδος/ Έξοδος Σε σχεδόν όλα τα προγράµµατα πρέπει να πάρουµε κάποια δεδοµένα και να δώσουµε

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

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

Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #4 ο : Αποσφαλμάτωση (debugging), μετατροπές Αντικειμενοστραφής Προγραμματισμός I(5 ο εξ) Εργαστήριο #4 ο : Αποσφαλμάτωση (debugging), μετατροπές τύπων, δημιουργία τυχαίων αριθμών, λήψη εισόδου από χρήστη Λογικά λάθη public class ShowLogicErrors

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

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

Δομημένος Προγραμματισμός ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ Ανώτατο Εκπαιδευτικό Ίδρυμα Πειραιά Τεχνολογικού Τομέα Δομημένος Προγραμματισμός Ενότητα: Εισαγωγή στη C θεωρία Δ. Ε. Μετάφας Τμ. Ηλεκτρονικών Μηχ. Τ.Ε. Άδειες Χρήσης Το παρόν εκπαιδευτικό

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

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

I (JAVA) Ονοματεπώνυμο: Α. Μ.: Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην. I (JAVA) Ονοματεπώνυμο: Α. Μ.: + ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην. + 1 ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ (σελ. 2/3) 2 ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ (σελ. 3/3)

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

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

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 1/4/2008 ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 1/4/2008 Η Κλάση String (συνέχεια από το προηγούμενο μάθημα) Μέθοδοι δημιουργίας νέων αντικειμένων String (συνέχεια) - public String touppercase() - public String trim() κόβει τα

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

5. Ανασκόπηση αντικειμενοστραφούς προγραμματισμού

5. Ανασκόπηση αντικειμενοστραφούς προγραμματισμού 5. Ανασκόπηση αντικειμενοστραφούς προγραμματισμού Χειμερινό εξάμηνο 2013 Πέτρος Κωμοδρόμος komodromos@ucy.ac.cy http://www.eng.ucy.ac.cy/petros 1 Θέματα Αντικειμενοστραφής προγραμματισμός Τάξεις (classes)

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

Δομημένος Προγραμματισμός (ΤΛ1006)

Δομημένος Προγραμματισμός (ΤΛ1006) Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής

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

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr

Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ. Εργαστήριο 1 Εισαγωγή στη C. Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Η-Υ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ Εργαστήριο 1 Εισαγωγή στη C Σοφία Μπαλτζή s.mpaltzi@di.uoa.gr Διαδικαστικά Ιστοσελίδα μαθήματος: http://eclass.uoa.gr/courses/f30/ Υποχρεωτική παρακολούθηση: Παρασκευή 14:00 16:00 στην

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

Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: ΕΠΛ 131 Αρχές Προγραµµατισµού I 4-2

Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: ΕΠΛ 131 Αρχές Προγραµµατισµού I 4-2 Είσοδος / Έξοδος Στην ενότητα αυτή θα µελετηθούν τα εξής επιµέρους θέµατα: Συνάρτηση εξόδου printf Συνάρτηση εισόδου scanf Βιβλίο µαθήµατος: Chapter 2,, Sec. 3 & 6 ΕΠΛ 131 Αρχές Προγραµµατισµού I 4-1 Είσοδος

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

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

ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008 ΠΛΗΡΟΦΟΡΙΚΗ ΙΙ (JAVA) 11/3/2008 Κατασκευαστές (Constructors) Ειδικός τύπος μεθόδων, οι οποίες: - είναι public και έχουν το ίδιο όνομα με αυτό της κλάσης - χρησιμοποιούνται για να αρχικοποιήσουν κάποιες

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

Δομημένος Προγραμματισμός (ΤΛ1006)

Δομημένος Προγραμματισμός (ΤΛ1006) Τεχνολογικό Εκπαιδευτικό Ίδρυμα Κρήτης Σχολή Εφαρμοσμένων Επιστημών Τμήμα Ηλεκτρονικών Μηχανικών Τομέας Αυτοματισμού και Πληροφορικής Δομημένος Προγραμματισμός (ΤΛ1006) Δρ. Μηχ. Νικόλαος Πετράκης, Καθηγητής

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

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

I (JAVA) Ονοματεπώνυμο: Α. Μ.: Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην. I (JAVA) Ονοματεπώνυμο: Α. Μ.: + ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ Δώστε τις απαντήσεις σας ΕΔΩ: Απαντήσεις στις σελίδες των ερωτήσεων ΔΕΝ θα ληφθούν υπ όψην. + 1 ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ (σελ. 2/3) 2 ΦΥΛΛΟ ΑΠΑΝΤΗΣΕΩΝ (σελ. 3/3)

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Μαθήματα από τα εργαστήρια

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

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

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Εισαγωγή στη Java ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java Βρόγχοι Το if-then Statement Στην Java το if-then statement έχει το εξής συντακτικό Η παρένθεση είναι απαραίτητη if (condition) if-code block

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

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

Εισαγωγή στον Προγραµµατισµό, Αντώνιος Συµβώνης, ΣΕΜΦΕ, ΕΜΠ,, Slide 6 Ανασκόπηση Μια εφαρµογή Java είναι ένα σύνολο από συνεργαζόµενες κλάσεις Εβδοµάδα 2: Αντικείµενα, Κλάσεις και Μέθοδοι Εισαγωγή στον Προγραµµατισµό,,, Slide 1 Εισαγωγή στον Προγραµµατισµό,,, Slide 2 Ανασκόπηση:

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

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

Εισαγωγή στη γλώσσα προγραμματισμού C++ Εισαγωγή στη γλώσσα προγραμματισμού C++ Περιβάλλον Εργασίας 2 Περιβάλλον Εργασίας 1. Χρήση απλού κειμενογράφου και Μεταγλωττιστή 2. Ολοκληρωμένα Περιβάλλοντα Εργασίας (Integrated Development Environments)

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

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

Εισαγωγή στην Γλώσσα Προγραμματισμού Python. 12/10/16 1 Εισαγωγή στην Γλώσσα Προγραμματισμού Python 12/10/16 costis@teicrete.gr 1 Διάφορες Γλώσσες Προγραμματισμού C or C++ Java Perl Scheme Fortran Python Matlab 12/10/16 costis@teicrete.gr 2 Περίληψη Παρουσίασης

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

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

ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 6/12/07 Πρώτοι αριθμοί ΠΛΗΡΟΦΟΡΙΚΗ Ι JAVA Τμήμα θεωρίας με Α.Μ. σε 3, 7, 8 & 9 6/12/07 Ένας ακέραιος μεγαλύτερος του 1 είναι πρώτος αν έχει ακριβώς δύο διαιρέτες (τη μονάδα και τον εαυτό του). Πρόβλημα: έλεγχος

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

Προγραμματισμός Η/Υ (ΤΛ2007 )

Προγραμματισμός Η/Υ (ΤΛ2007 ) Τμήμα Ηλεκτρονικών Μηχανικών Τ.Ε.Ι. Κρήτης Προγραμματισμός Η/Υ (ΤΛ2007 ) Δρ. Μηχ. Νικόλαος Πετράκης (npet@chania.teicrete.gr) Πέμπτη (5 η ) τρίωρη διάλεξη. Ιστοσελίδα Μαθήματος: https://eclass.chania.teicrete.gr/

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

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

Εισαγωγή στον Προγραμματισμό Εισαγωγή στον Προγραμματισμό Ακαδημαϊκό έτος: 2010-2011 Επιμέλεια Ξενοφών Βασιλάκος Περιεχόμενα Φροντιστηρίου 1. Εισαγωγή 2. Εντολές Εκχώρησης και Τελικές μεταβλητές 3. Μεταγλώττιση και διερμηνεία των

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

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

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

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

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

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

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

Δεδομένα, τελεστές, είσοδος/έξοδος

Δεδομένα, τελεστές, είσοδος/έξοδος 2 Δεδομένα, τελεστές, είσοδος/έξοδος Τι θα δούμε σε αυτό το μάθημα 1. βασικοί τύποι δεδομένων 2. ακέραιοι 3. κινητής υποδιαστολής 4. ο τύπος decimal 5. χαρακτήρες 6. bool 7. string 8. χρήση μεταβλητών

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

1 ΕΙΣΑΓΩΓΗ. Πρωταρχικοί Τύποι

1 ΕΙΣΑΓΩΓΗ. Πρωταρχικοί Τύποι 1 ΕΙΣΑΓΩΓΗ Η γλώσσα προγραµµατισµού Java είναι ισχυρά τυποποιηµένη (strongly typed), που σηµαίνει ότι κάθε µεταβλητή και κάθε έκφραση έχει κάποιο τύπο, ο οποίος πρέπει να είναι γνωστός κατά το χρόνο της

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

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

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

Mεταβλητές (variables) και Σταθερές (constants)

Mεταβλητές (variables) και Σταθερές (constants) Mεταβλητές (variables) και Σταθερές (constants) Οι μεταβλητές είναι οι θέσεις μνήμης στις οποίες ένα πρόγραμμα τοποθετεί τα δεδομένα του κατά τη διάρκεια της λειτουργίας του. θα μάθουμε: πως δηλώνουμε

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

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

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

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