关于c#中internal用法
发布网友
发布时间:2022-04-25 20:39
我来回答
共4个回答
热心网友
时间:2022-04-27 18:35
internal 关键字是类型和类型的成员 访问修饰符。 只有在同一程序集的文件中,内部类型或成员才是可访问的,如下例所示:
public class BaseClass
{
// Only accessible within the same assembly
internal static int x = 0;
}
从当前程序集或从包含类派生的类型,可以访问具有访问修饰符 protected internal 的类型或成员。
有关 internal 与其他访问修饰符的比较,请参见可访问性级别(C# 参考)和访问修饰符(C# 编程指南)。
有关程序集的更多信息,请参见程序集和全局程序集缓存(C# 和 Visual Basic)。
内部访问通常用于基于组件的开发,因为它使一组组件能够以私有方式进行合作,而不必向应用程序代码的其余部分公开。 例如,用于生成图形用户界面的框架可以提供 Control 和 Form 类,这两个类通过使用具有内部访问权限的成员进行合作。 由于这些成员是内部的,它们不向正在使用框架的代码公开。
从定义具有内部访问能力的类型或成员的程序集外部引用该类型或成员是错误的。
热心网友
时间:2022-04-27 19:53
internal的访问权限是当前的程序集,也就是exe或者dll文件
热心网友
时间:2022-04-27 21:27
你的运行没有错误,不可能吧。我按照你的方法运行了一次,报了3个地方的错误。在Assembly1中你的BaseClass 中的成员变量申明为static在Main中是没有办法访问的。
还有你的internal 是在整个程序集中有效的。还有你的问题很模糊
热心网友
时间:2022-04-27 23:19
难!
在C#中internal关键字是什么意思?
在C#编程中,"internal"是一个访问修饰符,它用于控制类或成员在程序集内部的可见性。当你在一个程序集中定义一个类或方法为"internal",意味着它仅对当前程序集内的其他类可见,而不在其他引用该程序集的项目中公开。这样做的好处是能够保护代码的封装性,防止不必要的外部访问或滥用。举个例子,考虑...
在C#中internal关键字是什么意思?
在C#编程中,"internal"关键字具有特定的含义。它用于修饰类型或成员,限制了它们的访问范围。当一个类型或成员被标记为internal,它只能在当前程序集中使用,意味着在同一个项目内部可以访问,而不能被其他项目或外部库所访问。例如,即使解决方案中有两个项目,内部类也无法在它们之间直接共享,就像DLL文...
关于c#中internal用法
public class BaseClass { // Only accessible within the same assembly internal static int x = 0;}从当前程序集或从包含类派生的类型,可以访问具有访问修饰符 protected internal 的类型或成员。有关 internal 与其他访问修饰符的比较,请参见可访问性级别(C# 参考)和访问修饰符(C# 编程...
C# internal
定义记录日志程序集如下: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...
在C#中internal关键字是什么意思?
internal修饰符可以用于类型或成员,使用该修饰符声明的类型或成员只能在同一程集内访问,接口的成员不能使用internal修饰符。就是使用internal的类只能在同一个项目中使用,不能在别的项目中使用,比如你的解决方案中有两个项目,那么只能在其所在的一个使用,就像是不能在Dll中傅它,因为这样别人引用时...
c#中的internal问题
internal int im=0;定义的是 Form1的一个成员 你的Form1也没有定义啊 Form1 f = new Form1();Form1.txtScore1.Text = f.im.ToString();这样用,应该就没有错误了 --- 如果你不通过对象来使用,就得把im定义成静态的 internal static int im=0;这样,就可以这样用了 Form1.txtScore1....
c# internal 有的说当前命名空间可访问,有的说当前程序集(项目)可访 ...
命名空间与程序集是两码事。internal与public等都是限制成员的访问权限。public修饰的成员可以被其它程序集所访问。但internal修饰的成员只能被该成员所在的程序集访问。命名空间就只是命名而已,就像人的命名,叫什么都无所谓,只要你喜欢。只要有权限,就可以访问到任何命名空间里的成员。不同的程序集里可以...
在C#中internal关键字是什么意思呢?
{ 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("");但不可以这么访问 ...
...类前面的关键字包括:abstract、delegate、extern、internal...
internal 或 无 只能当前项目中访问.public 可以在任何地方访问类.public abstract 类可以在任何地方访问,不能实例化,只能继承.abstract 或 internal abstract 类只能在当前项目中访问,不能实化,只供继承之用.public sealed ...
C#里protected internal啥时候用得到?
protected internal权限修饰词是让方法被同程序集assembly的子类调用,而不让方法被其他程序集中的子类调用..只写internal,同程序集的非子类-没有继承关系的其他类可以调用。只写protected,所有程序集的都可以以子类继承后调用...