C#中internal关键字

对于一些大型的项目,通常由很多个DLL文件组成,引用了这些DLL,就能访问DLL里面的类和类里面的方法。
比如,你写了一个记录日志的DLL,任何项目只要引用此DLL就能实现记录日志的功能,这个DLL文件的程序就是一个程序集。
如果你记录日志的程序集是这么定义的:

namespace LogerHelper 
{
    internal class aa
    {
         public void bb()
         {
             return "";
         }
    }

    public class Write
    {
        public void WriteIn(string content)
        {
            class x = new aa();    
            x.bb();
        }
    }
}


当另一个项目引用了此DLL, 它可以这么访问  :

LogerHelper.Write x = new LogerHelper.Write();
x.WriteIn("");


但不可以这么访问

LogerHelper.aa x = new LogerHelper.aa();
x.bb();


这就叫,只能在程序集中访问.

原文地址:https://www.cnblogs.com/gavin-num1/p/4481655.html