如何理解c#中的internal以及protected

记得刚刚开始学习变成的时候遇到的访问修饰符时,对于public,private还是比较容易理解的,但是,对于.net c# 中的protected以及internal 甚至 组合的protected internal 一直理解的不是很透彻,也看了一些相关描述的文章,但是被说的云里雾里的,最近在看一本.net相关的书(《c# via CLR》),里面关于这个内容的描述,一下就让我清晰起来,如何理解c#中的internal以及protected

直入主题吧-------------------------->

从CTS(Common Type Sytem)对于访问修饰符的关键词的描述,一下就可以理解到精髓,比如对于protected 在CTS中对应与family,对于internal 则对应与assembly,很明显: protected可见范围是继承关系中的子类,而internal 可见范围是程序集。

什么是CTS?

CTS(Common Type Sytem)是用来描述CLR中类型定义和行为的一个规范。