Please ensure Javascript is enabled for purposes of website accessibility

Μάθημα : ΠΡΟΗΓΜΕΝΕΣ ΜΕΘΟΔΟΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ (Μ135)

Κωδικός : DI615

ΠΡΟΗΓΜΕΝΕΣ ΜΕΘΟΔΟΙ ΠΡΟΓΡΑΜΜΑΤΙΣΜΟΥ (Μ135)

DI615  -  Κώστας Σαΐδης

Ανακοινώσεις

Κοινές συμβάσεις για την 1η εργασία

Δύο κοινές συμβάσεις που απλοποιούν την υλοποίηση σε κάποιες λεπτομέρειες της 1ης εργασίας.

  1. Τα static χαρακτηριστικά (πεδία ή/και μέθοδοι) ενός υπερ-τύπου, όταν είναι “ορατά” από τον υπο-τύπο, πρέπει να προσμετρώνται στα συνολικά χαρακτηριστικά (πεδία ή/και μέθοδοι) του υπο-τύπου, δεδομένου ότι το όνομα τους δεν “επαναορίζεται” στον υπο-τύπο (π.χ. shadow πεδίων, override ή overload μεθόδων).

  2. Οι κλάσεις του JDK είναι πάντα διαθέσιμες στο classpath κι επομένως δεν υπάρχει περίπτωση να μην γίνουν load μέσω του reflection API. Αυτό, όμως, δεν ισχύει για τρίτες κλάσεις (π.χ. κάποιου library). Η υλοποίησή σας θα πρέπει να θεωρεί ότι το input file είναι “σωστό”, δεν περιέχει δηλαδή ονόματα τύπων, για τους οποίους θα αποτύχει το reflective load. Αν προκύψει κάποιο class loading error (π.χ. ClassNotFoundError) η εφαρμογή σας θα πρέπει να τερματίζει χωρίς να γίνεται προσπάθεια χειρισμού αυτής της πείρπτωσης από τον κώδικά σας.