Δημοσιεύτηκε: 24 Δεκ 2011, 12:35
από giannosfor
Ο @medigeek τα λέει πολύ ωραία.
Το private σημαίνει το εξής.Αν είχες την κλάση Example2.

Κώδικας: Επιλογή όλων

public class Examples2 {
private int a;

public void setNumber(int number)
{
a=number; //ή this.a = number;
}
public int getNumber()
{
return a;
}
}

Ο λόγος που συνήθως βάζεις this.a είναι στην περίπτωση που στο number είχες δώσει όνομα a και έπρεπε με κάποιο τρόπο να ξεχωρίσεις ποιο a εκχωρείς που.
Μη ξεχνάς ότι το number είναι τοπική μεταβλητή δηλαδή δεν έχει υπόσταση έξω από την μέθοδο.Το this αναφέρεται στο αντικείμενο που δημιουργείται,επειδή δε ξέρουμε το όνομα του αντικειμένου που δημιουργείτε,αναφερόμαστε σε αυτό με αυτόν τον τρόπο.
Άρα this.a αναφέρεται στο a του αντικειμένου και όχι στο a που περνάς εσύ σαν local variable.

Και η Example

Κώδικας: Επιλογή όλων

public class Examples
{
public static void main(String args[])
{
Examples2 object = new Examples2();
object.a = 4; // <- δεν μπορείς.
}
}

Αυτό δεν μπορείς να το κάνεις,γι'αυτό και ο λόγος της private να μην μπορεί να έχει πρόσβαση άλλη κλάση στη συγκεκριμένη μεταβλητή.
Γι'αυτό δημιουργούμε μία μέθοδο public που έχουν όλοι πρόσβαση για να θέσουμε το a.Αυτό λέγεται ενθυλάκωση- encapsulation.

Κώδικας: Επιλογή όλων

public class Examples
{
public static void main(String args[])
{
Examples2 object = new Examples2();
object.setNumber(2);
System.out.println("The number is " + object.getNumber() );
}
}



Υ.Γ.
Δε κοίταξα το video σου βαριέμαι πραγματικά.Αν θες καλά video ψάξε να βρεις τα video courses της sun είναι παλιά αλλά πολύ καλά.