PHP objects and public/private methods

Θοδωρής Λύτρας thlytras at gmail.com
Tue Sep 4 13:11:45 EEST 2007


Χαιρετώ τη λίστα!

Όντας "ερασιτέχνης" στον προγραμματισμό και δη στον αντικειμενοστραφή, ήθελα 
να κάνω την εξής ερώτηση:

Έστω οτι έχω μια κλάση αντικειμένων Α και μια άλλη Β, οι οποίες ΔΕΝ έχουν 
συγγενική σχέση μεταξύ τους.

Αν μια μέθοδο Α::m() την ορίσω private, θα μπορεί να καλείται μόνο από άλλες 
μεθόδους εντός της κλάσης Α. Αν την ορίσω public θα μπορεί να την καλεί 
οποιοσδήποτε.

Υπάρχει κανένας τρόπος να ορίσω την Α::m() έτσι ωστε να μπορεί να κληθεί μέσα 
από την κλάση Β, αλλά όχι από οποιονδήποτε?

Υποπτεύομαι βέβαια πως η απάντηση είναι όχι... Εγκυκλοπαιδικά, υπάρχει άλλη 
γλώσσα προγραμματισμού στην οποία να γίνεται αυτό?

Και κάτι ακόμη: όταν έχεις μια κλάση Δ η οποία κληρονομεί από μια άλλη Γ, 
μπορείς με κάποιο τρόπο τις μεθόδους της Δ που είναι ίδιες με τη Γ να τους 
δώσεις διαφορετικά ονόματα; Ή μόνη λύση είναι να φτιάξεις καινούργιες που να 
καλούν τις παλιές;

Ευχαριστώ,

Θοδωρής

-- 
"Beauty is transitory"
"Beauty survives"
        - Mr. Spock & Capt. Kirk, "That which survives", stardate unknown
by Theodore Lytras <thlytras at gmail.com>




More information about the Linux-greek-users mailing list