我读了几个主题,Google搜索了很多网站,阅读了一些关于“内部”访问修饰符的定义。但仍然令人困惑。我找不到装配的确切定义。.Net程序集和内部访问修饰符的使用
让我们在Visual Studio中假设我有解决方案,其中我有两个项目 -
ProjectA (NameSpaceA), ProjectB (NameSpaceB).
ProjectA has references of ProjectB.
Each project has 2 class (.cs) files
- ProjectA (ClassA1.cs, ClassA2.cs)
- ProjectB (ClassB1.cs, ClassB2.cs)
在ClassA1.cs文件我有两个类:A1ClassOne,A1ClassTwo。在所有其他.cs文件中,每个文件只有一个类。
在解决方案每个类是单独的类(没有派生类)
问题:如果A1ClassOne我有法访问修饰符“内部”,然后从该班将可以访问? 以上解决方案示例中的组件含义是什么?整体解决方案或者每个项目都是不同的组件(解决方案中有两个组件)?或者每个类(.cs)文件?如果一个.cs文件中有几个类,该怎么办?
换句话说,我需要解决方案明智的解释汇编。
那么,我的项目中的所有类都可以访问类的内部成员?但是,如果我的解决方案中只有一个项目,内部和公共之间有什么区别。通常在大多数情况下,一个解决方案中只有一个项目。 –
不同之处在于,当您编译DLL时,有人可以稍后将其添加为其项目的引用。你的'内部'类/方法对他们来说是不可见的。公众的会是。想象一下你的DLL是你想要提供给其他人的库。你想暴露一切吗? –
感谢您的详细解释。从源文件的角度来看,我无法理解物理.exe程序集的概念。现在很明显。 –