C#的六种修饰符
访问修饰符 说明
public 公有访问。不受任何限制。
private 私有访问。只限于本类成员访问,子类,实例都不能访问。
protected 保护访问。只限于本类和子类访问,实例不能访问。
internal 内部访问。只限于本项目内访问,其他不能访问。
protected internal 内部保护访问。只限于本项目或是子类访问,其他不能访问
sealed 可以用来限制扩展性,如果密封了某个类,则其他类不能从该类继承
public和private比较好理解,
protected类中可由派生类实例访问,例子:
class People
{
public string school;
private string name;
protected string age { get; set; }
}
class man : People
{
public void printtest()
{
man aaa = new man();
aaa.age = "100";
Console.WriteLine("Age:" + aaa.age);
//People bbb = new People();
//bbb.age = "100"; //这样写是错误的
}
}
static void Main(string[] args)
{
man a = new man();
a.printtest();
Console.ReadLine();
}
Man是从People派生的。因此,可以从派生类直接访问基类的受保护成员。由此我们可以得出结论“受保护成员在其所在的类中可由派生类实例访问”。