手机
当前位置:查字典教程网 >编程开发 >C#教程 >C#难点逐个击破(5):类的访问类型
C#难点逐个击破(5):类的访问类型
摘要:讲这四类之间的区别时有必要讲解一个概念:程序集。程序集(Assembly),可以简单理解为编译之后生成的.dll或.exe文件,相对于nam...

讲这四类之间的区别时有必要讲解一个概念:程序集。程序集(Assembly),可以简单理解为编译之后生成的.dll或.exe文件,相对于namespace是类库的逻辑组织形式,它可以称为程序类库的物理组织形式,msdn上描述“程序集包含描述它们自己的内部版本号和它们包含的所有数据和对象类型的详细信息的元数据”。一般情况是一个程序集可以包含一个或者多个命名空间。

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();

}

}

}

【C#难点逐个击破(5):类的访问类型】相关文章:

C#难点逐个击破(6):C#数据类型与.net framework数据类型

C# 得到某一天的起始和截止时间的代码

c#中抽象类和接口的详细介绍

C# WinForm程序完全退出的问题解决

C# 图片与二进制转换的简单实例

C#软件注册码的实现代码

C#生成注册码的实例代码

C#难点逐个击破(7):checked与unchecked

C#难点逐个击破(9):类型转换

C#难点逐个击破(2):out返回参数

精品推荐
分类导航