private(C# 参考)
更新:2007 年 11 月
private 关键字是一个成员访问修饰符。私有访问是允许的最低访问级别。私有成员只有在声明它们的类和结构体中才是可访问的,如下例所示:
class Employee
{
private int i;
double d; // private access by default
}
同一体中的嵌套类型也可以访问那些私有成员。
在定义私有成员的类或结构外引用它会导致编译时错误。
有关 private 与其他访问修饰符的比较,请参见可访问性级别(C# 参考)和访问修饰符(C# 编程指南)。
示例
在此示例中,Employee 类包含两个私有数据成员 name 和 salary。作为私有成员,它们只能通过成员方法来访问。添加名为 GetName 和 Salary 的公共方法,以便可以对私有成员进行受控的访问。通过公共方法访问 name 成员,而通过公共只读属性访问salary 成员。(有关更多信息,请参见 属性(C# 编程指南)。)
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# 语言规范
有关更多信息,请参见 C# 语言规范中的以下各章节:
3.5.1 声明的可访问性
3.5.4 可访问性约束
10.3.5 访问修饰符
10.3.8.2 声明的可访问性
10.3.8.5 访问包含类型的私有成员和受保护成员