Δημοσιεύτηκε: 05 Φεβ 2012, 20:31
Ναι αλλά στο συγκεκριμένο παράδειγμα (αν θυμάμαι καλά) είναι και η μεταβλητή και οι μέθοδοι public, οπότε όντως είναι λίγο ανώφελο.. Αν η μεταβλητή είναι private τότε έχει μεγάλο νόημα, ειδικά η μέθοδος set, γιατί μπορείς να "απαγορεύεις" κάποιες τιμές, ή να εκτελείς άλλες εργασιές όταν ο χρήστης αλλάξει την μεταβλητή! Πχ:
Ελπίζω να ήμουν κατατοπιστικός
- Κώδικας: Επιλογή όλων
public class Square {
private boolean mystiko=false;
private double pleura=5, embadon=25;
public double getPleura() {
if (!mystiko) {return pleura;}
else {
System.out.print("δε σου λέω!\n");
return 0;
}//αν δε θέλουμε ο χρήστης να ξέρει, για οποιονδήποτε λόγο!
}//getPleura
public void setPleura(double p) {
if(p<0) {
System.out.print("αυτά δε γίνονται! δώσε μη αρνητικό αριθμό...\n");
return;
}//if
pleura=p;
embadon =p*p;// <--- αυτό δε θα μπορούσε να γίνει αν η μεταβλητή ήταν public
//και ο χρήστης της κλάσσης μας πατούσε απλώς sq.pleura=6; Το εμβαδό θα παρέμενε 25...
}//setPleura
public double getEmbadon() {return embadon;}
}//class Square
Ελπίζω να ήμουν κατατοπιστικός
