Βασικές ένοιες Αντικειμενοστραφούς Προγραμματισμού

Slides:



Advertisements
Παρόμοιες παρουσιάσεις
Συλλογές, Στοίβες και Ουρές Σε πολλές εφαρμογές μας αρκεί η αναπαράσταση ενός δυναμικού συνόλου με μια δομή δεδομένων η οποία δεν υποστηρίζει την αναζήτηση.
Advertisements

ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Σύνθεση αντικειμένων Παράδειγμα: Τμήμα πανεπιστημίου.
ΣΤΟΙΧΕΙΑ ΤΗΣ ΓΛΩΣΣΑΣ C++ Και ομοιότητες και διαφορές με την C.
1 Εισαγωγή στη Java Χρήσιμες Διευθύνσεις Χαρακτηριστικά της Java Εργαλεία της Java Εργαλεία της Java Μεταγλώττιση στοιχειωδών εφαρμογών.
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Copy Constructor Deep and Shallow Copies.
Γράφημα TexPoint fonts used in EMF. Read the TexPoint manual before you delete this box.: AA A A A Συνδυαστικό αντικείμενο που αποτελείται από.
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Αναφορές Μέθοδοι που επιστρέφουν αντικείμενα Deep and Shallow Copies.
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Θεσσαλίας Αντικειμενοστραφής Προγραμματισμός Ι Ενότητα 6: Πίνακες και Παράμετροι στην main. Διδάσκων: Νικόλαος Θ Λιόλιος,
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Κλάσεις και Αντικείμενα.
Τεχνολογικό Εκπαιδευτικό Ίδρυμα Θεσσαλίας Αντικειμενοστραφής Προγραμματισμός Ι Ενότητα 10: Αφηρημένες τάξεις. Διδάσκων: Νικόλαος Θ Λιόλιος, Καθηγητής.
Δομές Δεδομένων 8η Διάλεξη: Ταξινόμηση Ε. Μαρκάκης.
ΜΕΣΟΓΕΙΑΚΟ ΠΕΡΙΒΑΛΛΟΝ ΚΑΙ ΑΝΑΠΤΥΞΗ ΦΥΤΩΝ Μεσογειακό κλίμα επικρατεί σε πέντε παραθαλάσσιες περιοχές της γης που βρίσκονται σε διαφορετικά σημεία, Μεσόγειος,
Αγγέλα Καλκούνη1 Ξύλινα Δάπεδα Διαδικασία Κατασκευής Ξύλινων Καρφωτών Δαπέδων.
ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ Εισαγωγή στη Java.
ΕΡΓΑΣΙΑ ΣΤΗΝ ΠΡΑΚΤΙΚΗ ΑΣΚΗΣΗ ΦΟΙΤΗΤΡΙΕΣ: ΓΡΑΒΑΝΗ ΓΕΩΡΓΙΑ ΚΑΙ ΜΥΡΣΙΑΔΗ ΕΙΡΗΝΗ.
Βασικές ένοιες Αντικειμενοστραφούς Προγραμματισμού - Μέθοδοι ΕΡΓΑΣΤΗΡΙΟ AΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ (Διαφάνειες: ΧΟΧΟΛΗΣ ΔΙΟΝΥΣΙΟΣ Προσαρμογή 2014:
Η καθημερινή ζωή στο Βυζάντιο Εργασία της μαθήτριας: Τζένη Αλουσάι στο μάθημα της Ιστορίας ΥΠΕΥΘΥΝΗ ΚΑΘΗΓΗΤΡΙΑ:κα.Τσαούση.
Βασικές ένοιες Αντικειμενοστραφούς Προγραμματισμού - Κλάσεις ΕΡΓΑΣΤΗΡΙΟ AΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ (Διαφάνειες: ΧΟΧΟΛΗΣ ΔΙΟΝΥΣΙΟΣ Προσαρμογή 2014:
Αντικειμενοστραφής Προγραμματισμός ΙΙ
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Εργαστηριακό σεμινάριο Χειμερινό εξάμηνο
Βασικές έννοιες Αντικειμενοστραφούς Προγραμματισμού ΙΙ
Αντικειμενοστραφής Προγραμματισμός ΙΙ
Διδάσκων: Δρ. Τσίντζα Παναγιώτα
Πίνακες και αλφαριθμητικά
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Ανάλυση, Σχεδίαση, Προγραμματισμός
Βασικές έννοιες Αντικειμενοστραφούς Προγραμματισμού ΙΙ
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Αντικειμενοστραφής Προγραμματισμός ΙΙ
Αντικειμενοστραφής Προγραμματισμός ΙΙ
ΑΡΧΙΤΕΚΤΟΝΙΚΗ ΑΚΟΥΣΤΙΚΗ επεξεργασία θέματος 2015
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Δομές διακλάδωσης, επαναλήψεις, μέθοδοι
ΠΑΝΕΠΙΣΤΗΜΙΟ ΙΩΑΝΝΙΝΩΝ ΑΝΟΙΚΤΑ ΑΚΑΔΗΜΑΪΚΑ ΜΑΘΗΜΑΤΑ
Τεχνολογία και Προγραμματισμός Υπολογιστών
ΔΥΝΑΜΕΙΣ αν.
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
ΣΥΓΚΛΙΝΟΝΤΕΣ ΦΑΚΟΙ Εργαστηριακή Άσκηση 13 Γ′ Γυμνασίου
Δομές Επανάληψης ΕΡΓΑΣΤΗΡΙΟ AΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΗΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Η στήριξη και η κίνηση στους ζωικούς οργανισμούς
Η Κωνσταντινα και οι αραχνεσ τησ
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Μήκος κύκλου & μήκος τόξου
ΔΙΑΔΙΚΑΣΙΑ ΕΓΚΑΤΑΣΤΑΣΗΣ ΥΛΙΚΩΝ
ΕΛΛΗΝΙΚΗ ΔΗΜΟΚΡΑΤΙΑ ΠΑΝΕΠΙΣΤΗΜΙΟ ΚΡΗΤΗΣ
Ειδικά Θέματα στον Προγραμματισμό Υπολογιστών
Προγραμματισμός κινητών συσκευών
ΑΜΠΕΛΙ ΠΡΟΓΡΑΜΜΑ ΠΕΡΙΒΑΛΛΟΝΤΙΚΗΣ ΕΚΠΑΙΔΕΥΣΗΣ
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Εισαγωγή στον αλγεβρικό λογισμό
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Wrapper Classes, Abstract Classes and Interfaces
Μέτρηση εμβαδού Εργαστηριακή Άσκηση 1 B′ Γυμνασίου
Αλγόριθμοι/ ΨΕΠ Ξένιος Αντωνιάδης 08/04/2019.
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Assignments, Expressions & Operators
ΤΕΧΝΙΚΕΣ Αντικειμενοστραφουσ προγραμματισμου
Μεταγράφημα παρουσίασης:

Βασικές ένοιες Αντικειμενοστραφούς Προγραμματισμού ΕΡΓΑΣΤΗΡΙΟ ΑΝΙΚΕΙΜΕΝΟΣΤΑΠΡΟΓΡΑΜΜΑΤΙΣΜΟΣ ΧΟΧΟΛΗΣ ΔΙΟΝΥΣΙΟΣ

Γιατί χρησιμοποιούμε Μεθόδους Τμηματοποίηση(Modularity) Η χρήση των μεθόδων βοηθά στην οργάνωση του κώδικα σε διακριτές λειτουργικές μονάδες Μείωση του μεγέθους των προγραμμάτων Με την κατάλληλη χρήση των μεθόδων μειώνεται ο συνολικός αριθμός γραμμών κώδικα ενός προγράμματος Ο κώδικας γίνεται πιο ευανάγνωστος Η χρήση των μεθόδων σε συνδυασμό με την κατάλληλη χρήση των σχολίων καθιστά τον κώδικα πιο κατανοητό και ευανάγνωστο από άλλους προγραμματιστές

Ορισμός Μεθόδου Μια μέθοδος δηλώνεται με τον ακόλουθο τρόπο: τύπος_επιστροφής όνομα_μεθόδου(λίστα_παραμέτρων){ δηλώσεις και εντολές } Παράδειγμα: int addNumbers(int num1,int num2){ int sum =num1+num2; return sum; Αν η μέθοδος δεν επιστρέφει τίποτα τότε δηλώνεται ως void: void addNumbers(int num1,int num2){

ΠΑΡΑΔΕΙΓΜΑ(ΧΩΡΙΣ ΧΡΗΣΗ ΜΕΘΟΔΩΝ) public class Factorial{ public static void main(String[] args){ int num1 =Integer.parseInt(args[0]); int num2 =Integer.parseInt(args[1]); int num3 =Integer.parseInt(args[2]); int fact =1; for(int i=1; i<=num1; i++){ fact= fact*i; } System.out.println(num1 +”! =”+fact); fact =1; for(int i=1; i<=num2; i++){ System.out.println(num2 +”! =”+fact); for(int i=1; i<=num3; i++){ System.out.println(num3 +”! =”+fact);

ΠΑΡΑΔΕΙΓΜΑ(ME ΧΡΗΣΗ ΜΕΘΟΔΩΝ) public class Factorial{ public static void main(String[] args){ int num1 =Integer.parseInt(args[0]); int num2 =Integer.parseInt(args[1]); int num3 =Integer.parseInt(args[2]); System.out.println(num1 +”! =”+calculateFact(num1)); System.out.println(num2 +”! =”+calculateFact(num2)); System.out.println(num3 +”! =”+calculateFact(num3)); }//End of method main int calculateFact(int number){ int fact =1; for(int i=1; i<=number; i++){ fact= fact*i; } return fact; } //End of method calculateFactorial } //End of class Factorial

ΑΣΚΗΣΗ 1 Να γραφεί πρόγραμμα σε java με όνομα CalculatorWithMethods το οποίο θα δέχεται τρία ορίσματα εισόδου: Δύο δεκαδικούς αριθμούς Έναν χαρακτήρα με αποδεκτές τιμές εισόδου(+,-,:,x) Ανάλογα με την είσοδο να εκτελείται η κατάλληλη πράξη και να τυπώνεται το αποτέλεσμα. Για κάθε μία από τις τέσσερις πράξεις να δημιουργηθεί κατάλληλη μέθοδος

ΑΣΚΗΣΗ 2 Να γραφεί πρόγραμμα σε java με όνομα Statistics. Από ένα δείγμα πληθυσμού 5 ατόμων καταγράφονται τα στοιχεία του ύψους (σε cm >=40 και <=250) και της ηλικίας (σε έτη >=1 και <=120) σε πίνακες. Ζητείται να προσδιοριστούν το μέσο ύψος και η μέση ηλικία του δείγματος. Επίσης η ελάχιστη και η μέγιστη τιμή του κάθε μεγέθους.  Χρησιμοποιήστε Μεθόδους για την εύρεση των μέσων όρων, μεγίστων και ελαχίστων, που έχουν ως παράμετρο έναν πίνακα. Να γίνει χρήση αμυντικού προγραμματισμού.

ΑΣΚΗΣΗ 3 Ένα λύκειο έχει δύο τμήματα αποφοίτων (Γ’ Λυκείου) και καθένα από αυτά έχει 8 μαθητές. Στην καρτέλα του κάθε μαθητή αναγράφονται 4 βαθμοί που αντιστοιχούν στα μαθήματα που διδάχτηκαν κατά τη διάρκεια της χρονιάς. Οι λειτουργίες που εκτελούνται στις (ηλεκτρονικές) καρτέλες των μαθητών είναι οι ακόλουθες: Εισαγωγή (από το πληκτρολόγιο) των βαθμών(>=1 και <=20) όλων των μαθητών, και των δυο τμημάτων σε όλα τα μαθήματα. Να γίνει χρήση κώδικα αμυντικού προγραμματισμού στην εισαγωγή των βαθμών. Εύρεση και εκτύπωση του μέσου όρου της βαθμολογίας κάθε μαθητή, καθώς και εύρεση και εκτύπωση του τμήματος που ανήκει ο καλύτερος μαθητής. Εύρεση και εκτύπωση του μέσου όρου κάθε τμήματος, το ποσοστό αποτυχίας σε κάθε τμήμα καθώς και το συνολικό πλήθος των μαθητών που απορρίπτονται από όλα τα τμήματα (μέσος όρος μικρότερος από 9.5). Να γράψετε πρόγραμμα σε java με όνομα Grades που υλοποιεί όλες τις παραπάνω λειτουργίες χρησιμοποιώντας συναρτήσεις.