C# 内部说明符的工作原理
我只是尝试在我的C# 内部说明符的工作原理,c#,internal,C#,Internal,我只是尝试在我的BaseClass中使用Internal,告诉我内部类不能在其他方法或类中实例化并产生错误,但是为什么我仍然可以在方法Main()中实例化BaseClass TestAccess.cs internal class BaseClass { public static int intM = 0; } class TestAccess { static void Main() { BaseClass myBase = new BaseClass(
BaseClass
中使用Internal,告诉我内部类不能在其他方法或类中实例化并产生错误,但是为什么我仍然可以在方法Main()
中实例化BaseClass
TestAccess.cs
internal class BaseClass
{
public static int intM = 0;
}
class TestAccess
{
static void Main()
{
BaseClass myBase = new BaseClass(); // CS0122 This should be an error because BaseClass is Internal class.
}
}
你误解了MSDN<代码>内部表示该类仅在包含它的程序集中可见。你贴的例子完全正确 MSDN说 引用具有内部访问权限的类型或成员时出错 在定义它的程序集之外。
(强调我的)您误解了MSDN<代码>内部表示该类仅在包含它的程序集中可见。你贴的例子完全正确 MSDN说 引用具有内部访问权限的类型或成员时出错 在定义它的程序集之外。
(强调我的)你误解了
内部的意思<代码>内部
项可以从同一程序集中的任何文件(即项目或DLL)访问。在同一文件中有两个类肯定在同一程序集中
发件人:
internal关键字是类型和类型成员的访问修饰符。
内部类型或成员只能在同一文件中访问
装配
您误解了
的内部含义<代码>内部
项可以从同一程序集中的任何文件(即项目或DLL)访问。在同一文件中有两个类肯定在同一程序集中
发件人:
internal关键字是类型和类型成员的访问修饰符。
内部类型或成员只能在同一文件中访问
装配
仅用于在同一程序集中访问。您不会收到错误,因为您位于同一程序集中(在本例中为同一文件)
如果内部类基类在另一个项目中,您将无法访问它。仅用于在同一程序集中访问。您不会收到错误,因为您位于同一程序集中(在本例中为同一文件)
如果内部类基类在另一个项目中,您将无法访问它。这意味着我需要两个单独的项目才能使内部说明符工作?如果您希望基于包含它的程序集限制可见性,那么是的。这意味着我需要两个独立的项目才能使内部说明符工作?如果您想基于包含它的程序集限制可见性,那么是的。