Public:对其他任何类的任何方法都是可见的;
Private:本类中定义的成员只有本类的方法才能访问;
Protected:本类中的成员只有本类的方法及继承本类的类的方法才能访问;
internal:本类中的成员只有本类所在的程序集中的任何类的方法访问;
protected internal:为protected与internal的并集。
因此从访问级别由高到低应当是Public>protected internal>internal>Protected>Private
类的默认修饰符为internal ,类中的成员变量默认修饰符为private,namespace可认为修饰符为public。另一点在msdn上也提到继承类的访问级别不能大于被继承类的访问级别,如internal的类不能继承private的类。
复制代码 代码如下:
using System;
/******************************
* Chapter:C#难点逐个击破(五)
* Author:王洪剑
* Date:2010-1-15
* Blog:http://www.51obj.cn/
* Email:walkingp@126.com
* Description:访问修改符
* ***************************/
namespace TestMain
{
public class A
{
public void Alert()
{
}
}
internal class B:A
{
internal new void Alert()
{
Console.WriteLine("you");
}
}
class Program
{
static void Main()
{
B b=new B();
b.Alert();
}
}
}