Καλές επιτυχίες παιδιά στα υπόλοιπα μαθήματά σας και καλές γιορτές!!!!

Σχετικά έγγραφα
Καλές επιτυχίες παιδιά στα υπόλοιπα μαθήματά σας και καλές γιορτές!!!!

Τμήμα Πολιτικών Μηχανικών και Μηχανικών Περιβάλλοντος ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, :00-10:00 π.μ.

9:00-10:00 π.μ. (60 λεπτά) Παρασκευή, 14 Οκτωβρίου, 2016

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

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

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

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

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

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

ΠΠΜ 221: Ανάλυση Κατασκευών με Μητρώα. 2 η Πρόοδος. 9:00-10:10 μ.μ. (70 λεπτά) Πέμπτη, 30 Μαρτίου, 2017

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

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

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

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

Κληρονομικότητα. Κληρονομικότητα (inheritance) είναι ο τρόπος µε τον οποίο μία τάξη μπορεί να κληρονομήσει ιδιότητες και συμπεριφορά από άλλες τάξεις.

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

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

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Σύνθεση αντικειμένων

ΠΛΗΡΟΦΟΡΙΚΗ ΙI Ενότητα 5: Κατασκευαστές (Constructors)

Διάλεξη 16-17: Πολυμορφισμός (Polymorphism) Διδάσκων: Παναγιώτης Ανδρέου

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

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

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

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

ΠΠΜ 221: Ανάλυση Κατασκευών με Μητρώα. ΠΠΜ 221: Ανάλυση Κατασκευών με Μητρώα. Ανάπτυξη Προγράμματος Ανάλυσης Επίπεδων Δικτυωμάτων

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

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

ΠΠΜ 320: Δυναμική Ανάλυση των Κατασκευών

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

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

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

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

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

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

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

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

Τμήμα Πολιτικών Μηχανικών και Μηχανικών Περιβάλλοντος ΠΠΜ 501: Προχωρημένη Ανάλυση Κατασκευών με Η/Υ. Ακαδημαϊκό Έτος , Χειμερινό Εξάμηνο

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

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

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

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

Κλάσεις. Τροποποιητές, ιασυνδέσεις, Πακέτα. Τροποποιητές ελέγχου προσπέλασης µεταβλητών και µεθόδων

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Σύνθεση αντικειμένων

Εισαγωγικές έννοιες. Ιωάννης Γ. Τσούλος 2014

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

Δοµές Δεδοµένων. 6η Διάλεξη Αναδροµικές Εξισώσεις και Αφηρηµένοι Τύποι Δεδοµένων. Ε. Μαρκάκης

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

Υπερφόρτωση (Overloading) Υπέρβαση (Overriding) - Upcasting Downcasting Final classes, methods

ΠΠΜ 221: Ανάλυση Κατασκευών με Μητρώα

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

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

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

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Σύνθεση αντικειμένων

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

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

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

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

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

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

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

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

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

ΕΠΛ131 Αρχές Προγραμματισμού

ΠΠΜ 220: Στατική Ανάλυση των Κατασκευών Ι

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

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

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

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

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

Διδάσκων: Παναγιώτης Ανδρέου

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Σύνθεση αντικειμένων

ΠΟΛΥΜΟΡΦΙΣΜΟΣ. 4.1 Κληρονομικότητα και Αρχή της Υποκατάστασης

Τεχνολογία Λογισμικού

ΠΠΜ 221: Ανάλυση Κατασκευών με Μητρώα

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

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

ΠΠΜ 220: Στατική Ανάλυση των Κατασκευών Ι

Κεφάλαιο 15 Γλώσσα προγραμματισμού Java

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

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

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Σύνθεση αντικειμένων

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Copy Constructor Deep and Shallow Copies

Τμήμα Πολιτικών Μηχανικών και Μηχανικών Περιβάλλοντος ΠΠΜ 501: Προχωρημένη Ανάλυση Κατασκευών με Η/Υ. Ενδιάμεση Πρόοδος. 6:00-8:00 μ. μ.

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Πολυμορφισμός Αφηρημένες κλάσεις Interfaces (διεπαφές)

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

ΤΕΧΝΙΚΕΣ ΑΝΤΙΚΕΙΜΕΝΟΣΤΡΑΦΟΥΣ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ. Σύνθεση αντικειμένων

4. Επίλυση Δοκών και Πλαισίων με τις

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

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

Διάλεξη 15: Αναδρομή (Recursion) Διδάσκων: Παναγιώτης Ανδρέου

ΕΡΓΑΣΙΑ 4 - Αντικειμενοστραφής Υλοποίηση του Συστήματος Κατανομής Θέσεων σε Προγράμματα Σπουδών

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

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

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

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

Διασυνδέσεις / Διεπαφές. Παναγιώτης Σφέτσος, PhD

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

Transcript:

Πανεπιστήμιο Κύπρου Πολυτεχνική Σχολή Τμήμα Πολιτικών Μηχανικών και Μηχανικών Περιβάλλοντος ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, 2016 Ακαδημαϊκό Έτος 2016-17, Χειμερινό Εξάμηνο Τελική Εξέταση 9:30-11:30 μ.μ. (120 λεπτά) Τετάρτη, 7 Δεκεμβρίου, 2016 Όνομα: Επίθετο: Αριθμός Ταυτότητας: E-mail: Τηλ. Επικοινωνίας Πρόβλημα Μονάδες Βαθμός 1 8 2 14 3 14 4 10 5 20 6 34 Christmas Bonus! 10 Καλές επιτυχίες παιδιά στα υπόλοιπα μαθήματά σας και καλές γιορτές!!!! Τελικός Βαθμός: Σύνολο: 100 + 10 ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, 2016, 1/17

Άσκηση 1: [8 μονάδες] ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, 2016 Τελική Εξέταση Ποια είναι η κύρια διαφορά ανάμεσα στη μεταγλώττιση και εκτέλεση προγραμμάτων γραμμένα σε C και αντίστοιχα στη Java, περιγράφοντας επίσης και ποια είναι τα σχετικά πλεονεκτήματα και μειονεκτήματα που προκύπτουν χρησιμοποιώντας τη μία γλώσσα (Java) έναντι της άλλης; Πέτρος Κωμοδρόμος, 2016, Τμήμα Πολιτικών Μηχανικών και Μηχανικών Περιβάλλοντος: 2/17

Άσκηση 2: [14 μονάδες] ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, 2016 Τελική Εξέταση Δίνοντας συγκεκριμένα παραδείγματα εξηγήστε συνοπτικά αλλά με σαφήνεια, ποια είναι τα δύο κύρια είδη προγραμμάτων σε Java, ποια είναι τα κύρια χαρακτηριστικά και στοιχεία τους για να μπορούν να εκτελεστούν και πως μεταγλωττίζονται και εκτελούνται «χειρωνακτικά» (δηλαδή, χωρίς τη χρήση ενός IDE, όπως το NetBeans). ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, 2016, 3/17

Πέτρος Κωμοδρόμος, 2016, Τμήμα Πολιτικών Μηχανικών και Μηχανικών Περιβάλλοντος: 4/17

Άσκηση 3: [14 μονάδες] ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, 2016 Τελική Εξέταση Εξηγήστε τι είναι αναδρομική μέθοδος (recursive method). Παρουσιάστε μίαν αναδρομική μέθοδο που να υπολογίζει το παραγοντικό ενός αριθμού, θεωρώντας ότι ο αριθμός που θα σας δοθεί θα είναι θετικός ακέραιος. ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, 2016, 5/17

Άσκηση 4: [10 μονάδες] ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, 2016 Τελική Εξέταση (α) Εξηγήστε τι είναι η υπερφόρτωση μεθόδων (method overloading), δίνοντας και κάποιο απλό παράδειγμα. [4 μον.] Πέτρος Κωμοδρόμος, 2016, Τμήμα Πολιτικών Μηχανικών και Μηχανικών Περιβάλλοντος: 6/17

(β) Εξηγήστε τι είναι πολυμορφισμός (polymorphism) στον αντικειμενοστραφή προγραμματισμό, δίνοντας και κάποιο απλό παράδειγμα. [6 μον.] ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, 2016, 7/17

Άσκηση 5: [20 μονάδες] ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, 2016 Τελική Εξέταση Περιγράψτε 4 διαφορετικούς δυνατούς τρόπους διαχείρισης ενός actionevent κατά τη χρήση γραφικών συστατικών, δίνοντας συνοπτικά και απλά παραδείγματα για τον κάθε εναλλακτικό τρόπο. Πέτρος Κωμοδρόμος, 2016, Τμήμα Πολιτικών Μηχανικών και Μηχανικών Περιβάλλοντος: 8/17

ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, 2016, 9/17

Πέτρος Κωμοδρόμος, 2016, Τμήμα Πολιτικών Μηχανικών και Μηχανικών Περιβάλλοντος: 10/17

ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, 2016, 11/17

Άσκηση 6: [34 μονάδες] ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, 2016 Τελική Εξέταση Ζητείται να συμπληρώσετε τους ορισμούς των πιο κάτω τάξεων StructuralElement και Rod, παρέχοντας τον κώδικα που λείπει σύμφωνα με το πιο κάτω UML διάγραμμα. StructuralElement - id: int - elasticitymodulus: double + <<Constructor>> StructuralElement (id : int, elasticitymodulus : double) + getelasticitymodulus() : double + tostring() : String Rod - startnode : Point - endnode : Point - area double + <<Constructor>> Rod (id : int, elasticitymodulus : double, startnode : Point, endnode : Point, area : double) + computestiffness() : double + tostring() : String Αφού συμπληρωθεί ορθά ο ορισμός των τάξεων StructuralElement και Rod, το πιο κάτω πρόγραμμα Final_6 θα πρέπει να μπορεί να κάνει χρήση της τάξης Rod (ράβδος δικτυώματος), η οποία είναι υποτάξη της τάξης StructuralElement (δομικό στοιχείο), όπως φαίνεται στο πιο πάνω UML διάγραμμα, ώστε να ορίζει ράβδους δικτυωμάτων και να εκτυπώνει τα στοιχεία μιας ράβδου υπολογίζοντας και την αντίστοιχη δυστένειά («δυσκαμψία») τους (Κ=Α*Ε/L) με κατάλληλη κλήση της μεθόδου computestiffness(). public class Final_6 { public static void main(string[] args) { Point p1 = new Point(3.25, 2.5); Point p2 = new Point(); Point p3 = new Point(5.65, -4.75); StructuralElement se1 = new Rod(17,30e9, p1, p2, 0.015); StructuralElement se2 = new Rod(12,30e9, p3, p2, 0.025); System.out.println("se1: " + se1); System.out.println("\nse2: " + se2); Πέτρος Κωμοδρόμος, 2016, Τμήμα Πολιτικών Μηχανικών και Μηχανικών Περιβάλλοντος: 12/17

Το αποτέλεσμα από την εκτέλεση του προαναφερθέντος προγράμματος είναι η εκτύπωση των δεδομένων αλλά και της δυσκαμψίας της κάθε ράβδου, όπως πιο κάτω: se1: Structural Element: id = 17 Modulus of Elasticity = 3.0E10 Start Node: x = 3.25 y = 2.5 End Node: x = 0.0 y = 0.0 Stiffness: 1.0974793695294462E8 se2: Structural Element: id = 12 Modulus of Elasticity = 3.0E10 Start Node: x = 5.65 y = -4.75 End Node: x = 0.0 y = 0.0 Stiffness: 1.0160680277156389E8 Συγκεκριμένα, η κάθε ράβδος (Rod) έχει αριθμό μέλους (id) και μέτρο ελαστικότητας (elasticitymodulus), τα οποία κληρονομεί από την υπερτάξη της (StructuralElement), καθώς και κόμβο αρχής (startnode) και τέλους (endnode), και επιφάνεια διατομής (area). Οι κόμβοι ορίζονται ως αντικείμενα της τάξης Point, όπως ορίζεται πιο κάτω. class Point { private double x; private double y; Point() { this(0,0); Point(double x, double y) { this.x = x; this.y = y; double getx() { return x; double gety() { return y; public String tostring() { return "x = " + x + " y = " + y; ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, 2016, 13/17

class StructuralElement { // Ορίστε εδώ τα μέλη της τάξης StructuralElement με private πρόσβαση StructuralElement(int id, double elasticitymodulus) { // Συμπληρώστε κατάλληλα τη μέθοδο κατασκευής double getεlasticitymodulus() { // Συμπληρώστε κατάλληλα τη μέθοδο getεlasticitymodulus() // Επαναορίστε εδώ τη μέθοδο tostring () ώστε να επιστρέφει το id και το μέτρο // ελαστικότητας του μέλους Πέτρος Κωμοδρόμος, 2016, Τμήμα Πολιτικών Μηχανικών και Μηχανικών Περιβάλλοντος: 14/17

//Ορίστε εδώ την τάξη Rod που επεκτείνει την τάξη StructuralElement { // Ορίστε εδώ τα μέλη της τάξης Rod με private πρόσβαση Rod(int id, double elasticitymodulus, Point startnode, Point endnode, double area) { // Συμπληρώστε κατάλληλα τη μέθοδο κατασκευής double computestiffness() { // Συμπληρώστε κατάλληλα τη μέθοδο computestiffness () ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, 2016, 15/17

// Επαναορίστε εδώ τη μέθοδο tostring (), ώστε να επιστρέφει το id, το μέτρο // ελαστικότητας, τους κόμβους αρχής και τέλους και τη δυστένεια της ράβδου Πέτρος Κωμοδρόμος, 2016, Τμήμα Πολιτικών Μηχανικών και Μηχανικών Περιβάλλοντος: 16/17

Επιπλέον,.Χριστουγεννιάτικες μονάδες: [+10 μονάδες] Τι είναι το catch block, που, πως και πότε χρησιμοποιείται στη Java; ΠΠΜ 401: Ανάπτυξη Λογισμικού Εφαρμογών Μηχανικής, 2016, 17/17