private (C#-Referenz)
Bei dem private-Schlüsselwort handelt es sich um einen Zugriffsmodifizierer für Member.Der Zugriff vom Typ private stellt die am meisten eingeschränkte Zugriffsebene dar.Private Member sind nur innerhalb des Klassen- oder Strukturtexts zugreifbar, in dem sie deklariert wurden, wie das Beispiel zeigt:
class Employee
{
private int i;
double d; // private access by default
}
Geschachtelte Typen im gleichen Textbereich können ebenfalls auf Member mit dem Zugriffsmodifizierer private zugreifen.
Ein Verweis auf einen Member mit dem Zugriffsmodifizierer private außerhalb der Klasse oder Struktur, in der er deklariert wurde, verursacht einen Fehler während der Kompilierung.
Einen Vergleich von private mit den anderen Zugriffsmodifizierern finden Sie unter Zugriffsebenen (C#-Referenz) und Zugriffsmodifizierer (C#-Programmierhandbuch).
Beispiel
In diesem Beispiel enthält die Employee-Klasse zwei private Datenmember, name und salary.Da es sich um private Member handelt, ist der Zugriff nur über Membermethoden möglich.Die öffentlichen Methoden GetName und Salary werden hinzugefügt, um den gesteuerten Zugriff auf die privaten Member zu ermöglichen.Auf den name-Member wird über eine öffentliche Methode zugegriffen, und auf den salary-Member wird über eine öffentliche schreibgeschützte Eigenschaft zugegriffen.(Weitere Informationen finden Sie unter Eigenschaften (C#-Programmierhandbuch).)
class Employee2
{
private string name = "FirstName, LastName";
private double salary = 100.0;
public string GetName()
{
return name;
}
public double Salary
{
get { return salary; }
}
}
class PrivateTest
{
static void Main()
{
Employee2 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#-Programmiersprachenspezifikation
Weitere Informationen finden Sie in der C#-Sprachspezifikation. Die Sprachspezifikation ist die verbindliche Quelle für die Syntax und Verwendung von C#.
Siehe auch
Referenz
Zugriffsmodifizierer (C#-Referenz)