privát (C#-referencia)
A private
kulcsszó egy taghozzáférés-módosító.
Ez a lap a hozzáférést ismerteti
private
. Aprivate
kulcsszó a hozzáférési módosító részeprivate protected
is.
A privát hozzáférés a legkevésbé megengedő hozzáférési szint. A magántagok csak az osztály vagy a deklarált szervezeti egység törzsén belül érhetők el, ahogyan ebben a példában is látható:
class Employee
{
private int _i;
double _d; // private access by default
}
Az ugyanabban a törzsben lévő beágyazott típusok ezekhez a privát tagokhoz is hozzáférhetnek.
Fordítási idő hiba az osztályon kívüli magántagra vagy a deklaráció alapjául szolgáló szerkezetre való hivatkozás.
A többi hozzáférési módosítóval való összehasonlítást private
lásd : Akadálymentességi szintek és hozzáférési módosítók.
Példa
Ebben a példában az Employee
osztály két privát adattagot _name
és _salary
. Privát tagként csak tagi módszerekkel érhetők el. A rendszer nyilvános metódusokat nevez el GetName
és Salary
ad hozzá a privát tagokhoz való szabályozott hozzáférés engedélyezéséhez. A _name
tag nyilvános módszerrel érhető el, a _salary
tag pedig nyilvános írásvédett tulajdonságon keresztül érhető el. További információ: Tulajdonságok.
class Employee2
{
private readonly string _name = "FirstName, LastName";
private readonly double _salary = 100.0;
public string GetName()
{
return _name;
}
public double Salary
{
get { return _salary; }
}
}
class PrivateTest
{
static void Main()
{
var e = new Employee2();
// The data members are inaccessible (private), so
// they can't be accessed like this:
// string n = e._name;
// double s = e._salary;
// '_name' is indirectly accessed via method:
string n = e.GetName();
// '_salary' is indirectly accessed via property
double s = e.Salary;
}
}
C# nyelvspecifikáció
További információ: Deklarált akadálymentesség a C# nyelvi specifikációjában. A nyelvi specifikáció a C#-szintaxis és -használat végleges forrása.