是可以从函数ConvertData()访问函数TestFunc()的。
namespace MyNameSpace
{
internal static class Convert
{
internal static int ConvertData()
{
//code
}
}
}namespace MyNameSpace.Test
{
public class TestDataType
{
public void TestFunc()
{
int x = Convert.ConvertData()
}
}
}发布于 2020-01-31 15:04:55
名称空间在这里是无关的。,它们只是一种方便的方法来安排类,并允许两个类具有相同的名称(只要它们不在相同的名称空间内)。假设您的硬盘不允许文件夹,并且所有文件都在c:\中的根级!如果没有名称空间,就会出现同样的混乱。(但与硬盘驱动器的文件夹不同,名称空间没有访问限制)。
internal 可访问性级别相对于总成。如果声明代码和使用代码位于同一个程序集( internal )中,则可以访问示例成员。
如果声明和使用在不同的程序集中(假设它在A中声明,在A.Test中使用,这是一个常见的情况),那么从A.Test访问在A中声明的internal成员是可行的。
实现这一点的方法是将using程序集(A.Test)提升为声明程序集(A)的朋友大会。
推广是在A中通过添加以下代码来完成的:[assembly: InternalsVisibleTo("A.Test")]在A代码中的任何位置,但是AssemblyInfo.cs是首选的位置。
https://stackoverflow.com/questions/60006239
复制相似问题