java:access_modifiers

This is an old revision of the document!


A PCRE internal error occured. This might be caused by a faulty plugin

====== Ελέγχοντας την πρόσβαση άλλων κλάσεων σε μέλη της κλάσης - Περιοριστές πρόσβασης ====== Προηγουμένως είδαμε την [[java:jar_files#Διάκριση μεταξύ πεδίων με τον προσδιοριστή πρόσβασης public και private | διάκριση μεταξύ πεδίων με βάση τον προσδιοριστή πρόσβασης **public** και **private**. Σε αυτή την ενότητα θα δούμε συνολικά την χρήση των προσδιοριστών πρόσβασης. Οι προσδιοριστές πρόσβασης εφαρμόζονται στα παρακάτω δύο επίπεδα, τα οποία θα δούμε στη συνέχεια αναλυτικά. - στο επίπεδο της κλάσης - στο επίπεδο των μελών της κλάσης, δηλαδή των πεδίων και των μεθόδων. ===== Προσδιοριστές Πρόσβασης στο επίπεδο της κλάσης ===== Όσον αφορά το επίπεδο της κλάσης οι περιοριστές πρόσβασης έχουν δύο τιμές - **public**: Η κλάση είναι ορατή από οποιαδήποτε άλλη κλάση στο ίδιο ή σε άλλο πακέτο. - **package-private** (κανένας προσδιοριστής πρόσβασης): Σε αυτή την περίπτωση η κλάση είναι ορατή μόνο από κλάσεις που ανήκουν στο ίδιο πακέτο με την υφιστάμενη κλάση. ===== Προσδιοριστές Πρόσβασης στο επίπεδο της των μελών της κλάσης ===== Όσον αφορά το επίπεδο των μελών της κλάσης εδώ έχουμε 4 επιλογές: - **public**: Τα μέλη της κλάσης είναι ορατά από οποιαδήποτε άλλη κλάση στο ίδιο ή σε άλλο πακέτο. - **protected**: Τα μέλη της κλάσης είναι ορατά μόνο από κλάσεις που ανήκουν στο ίδιο πακέτο με την υφιστάμενη κλάση. - **package-private** (κανένας προσδιοριστής πρόσβασης): Τα μέλη της κλάσης είναι ορατά μόνο από κλάσεις που ανήκουν στο ίδιο πακέτο με την υφιστάμενη κλάση ή από υποκλάσεις της υφιστάμενης κλάσης που ανήκουν σε άλλα πακέτα. - **private**: Τα μέλη της κλάσης είναι ορατά μόνο από την συγκεκριμένη κλάση. Ο παρακάτω πίνακας συμπυκνώνει την χρήση των προσδιοριστών πρόσβασης για τα μέλη μιας κλάσης ^ Προσδ.Πρόσβασης ^ Class ^ Package ^ Subclass in other package^ Other package ^ | ''public'' | Ναι | Ναι | Ναι | Ναι | | ''protected'' | Ναι | Ναι | Ναι | Όχι | | κανένας προσδιοριστής | Ναι | Ναι | Όχι | Όχι | | ''private'' | Ναι | Όχι | Όχι | Όχι | * Η πρώτη στήλη του πίνακα δείχνει αν η ίδια η κλάση έχει πρόσβαση στα μέλη της. Αυτό ισχύει σε όλες τις περιπτώσεις. * Η δεύτερη στήλη δείχνει αν μία κλάση που ανήκει στο ίδιο πακέτο με την εξεταζόμενη κλάση έχει πρόσβαση στα μέλη της κλάσης. * Η τρίτη στήλη δείχνει αν μία υποκλάση της εξεταζόμενης κλάσης που βρίσκεται σε άλλο σε άλλο πακέτο έχει πρόσβαση στα μέλη της κλάσης. * Η τέταρτη στήλη δείχνει αν μία κλάση που ανήκει σε άλλο πακέτο έχει πρόσβαση στα μέλη της κλάσης. Στην παρακάτω εικόνα δίνεται το παράδειγμα τεσσάρων κλάσεων που ανήκουν σε δύο διαφορετικά πακέτα ''Package One'' και ''Package Two''. {{ :java:classes-access.gif?500 |}}

java/access_modifiers.1423153804.txt.gz · Last modified: 2016/02/26 11:15 (external edit)