A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 戴水平 中级黑马   /  2012-7-8 12:19  /  1910 人查看  /  6 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

internal protect 这样组合作用范围是多大。在程序集内部是哪个修饰符起作用,在程序集外部有时哪个修饰符起作用

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

6 个回复

倒序浏览
internal   和   protected   internal   都是能在一个类中被这一灯类的程序集引用
internal   是没有受保护的
protected   internal   是受保护的。
internal:只有同一程序集内才可以访问。
internal protected:只是看字面意思容易弄错,许多人认为 internal protected 应该是“只有同一个程序集中的子类可以访问”,但其实它表示“同一个程序集中的所有类,以及所有程序集中的子类都可以访问”。其实本质应该是:internal or protected

评分

参与人数 1技术分 +1 收起 理由
宋天琪 + 1

查看全部评分

回复 使用道具 举报
1.public
无访问限制。
2.internal protected
可以理解为internal或protected,其访问域是internal和protected访问域的并集。
(结构的成员不可使用,因为结构不可被继承,所以谈不上protected)
3.internal
当前程序集访问。
4.protected
在同一类或子类内的代码可以访问,即使子类在不同的程序集。
(同样的,不适用于结构中的成员)
5.private(默认)
只有在同一类或结构内的代码可以访问。
更多内容,请看我最近写的一篇原创博客
回复 使用道具 举报
古古头 发表于 2012-7-8 15:39
1.public
无访问限制。
2.internal protected

http://blog.csdn.net/lcprogram/article/details/7712618
链接没弄上去,怎么回事?
回复 使用道具 举报

internal :是在本项目中使用,在其他项目中不能访问
protect:在本项目不是该类的继承的类不能使用,但在其他项目中继承该类的时候能访问
internal protect:在本项目中表现为protect,在其他项目中表现为internal
回复 使用道具 举报
public:访问不受限制
protected:访问仅限于包含类或从包含类派生的类型。
internal:访问仅限于当前项目。
protected internal:访问仅限于从包含类派生的当前项目或类型。
private:访问仅限于包含类型。
回复 使用道具 举报
internal protect 这样组合作用范围是多大。在程序集内部是哪个修饰符起作用,在程序集外部有时哪个修饰符起作用

纠正一点,是protect internal而不是internal protect。
访问修饰符说明:
public 公有访问。不受任何限制。
private 私有访问。只限于本类成员访问,子类,实例都不能访问。
protected 保护访问。只限于本类和子类访问,实例不能访问。
internal 内部访问。只限于本项目内访问,其他不能访问。
protected internal 内部保护访问。只限于本项目或是子类访问,其他不能访问 。

internal 其实相当于private internal,也就成了private internal和protected internal的区别了。 private   :访问仅限于当前程序集;protected   :访问仅限于当前程序集或从包含类派生的类型。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马