最适合网络开发者的网站
C# 语言。W3Schools 英文课程

尿素 西斯

C# 访问修饰符


访问修饰符

现在你已经非常熟悉了 public 在我们的许多例子中出现的关键字:

public string color;

public 关键字是访问修饰符,用于设置类、字段、方法和属性的访问级别/可见性。

C# 具有以下访问修饰符:

修改器 描述
public 该代码可供所有班级使用
private 该代码仅可在同一个类内访问
protected 代码可以在同一个类中访问,也可以在从该类继承的类中访问。您将详细了解 遗产 在后面的章节中
internal 代码只能在自己的程序集中访问,而不能从其他程序集中访问。您将在后面的章节中详细了解这一点

还有两种组合: protected internalprivate protected.

现在,让我们关注 publicprivate 修饰符。


Private 修饰符

如果你声明一个字段 private 访问修饰符,只能在同一个类内访问:

例子

class Car
{
  private string model = "Mustang";

  static void Main(string[] args)
  {
    Car myObj = new Car();
    Console.WriteLine(myObj.model);
  }
}

输出将是:

Mustang

亲自尝试 »

如果你尝试在类外访问它,则会发生错误:

例子

class Car
{
  private string model = "Mustang";
}

class Program
{
  static void Main(string[] args)
  {
    Car myObj = new Car();
    Console.WriteLine(myObj.model);
  }
}

输出将是:

'Car.model' is inaccessible due to its protection level
The field 'Car.model' is assigned but its value is never used

亲自尝试 »


公共修饰符

如果你声明一个字段 public 访问修饰符,所有类都可以访问它:

例子

class Car
{
  public string model = "Mustang";
}

class Program
{
  static void Main(string[] args)
  {
    Car myObj = new Car();
    Console.WriteLine(myObj.model);
  }
}

输出将是:

Mustang

亲自尝试 »


为什么要使用访问修饰符?

控制类成员的可见性(每个单独的类和类成员的安全级别)。

实现 ”封装“——这是确保“敏感”数据对用户隐藏的过程。这是通过将字段声明为 private您将在下一章中详细了解这一点。

笔记: 默认情况下,类的所有成员都是private 如果你没有指定访问修饰符:

例子

class Car
{
  string model;  // private
  string year;   // private
}