如果我在C#中的Main方法是私有的,为什么我的程序会工作?
默认情况下,类中每个成员的类型修饰符都是私有的,即使Main()函数类型修饰符是私有的。 CLR如何调用外部世界不可见的主要方法?
这不是真的。
它必须是公开的。 例如public static void Main()
。
编辑:这是我今天发现和学到的 ,为什么Main
不需要public
。 https://social.msdn.microsoft.com/forums/en-US/csharpgeneral/thread/9184c55b-4629-4fbf-ad77-2e96eadc4d62/
CLR不关心main
的可访问性。 “对外界可见”仅适用于代码 ,而不适用于运行时 。
尝试在代码上使用ildasm并查找main方法
.method private hidebysig static void Main(string[] args) cil managed { .entrypoint // this is something the CLR is interested in
你是对的,
它被标记为入口点。 检查这个问题: 为什么Main方法是私有的?
上述就是C#学习教程:如果我在C#中的Main方法是私有的,为什么我的程序会工作?分享的全部内容,如果对大家有所用处且需要了解更多关于C#学习教程,希望大家多多关注—计算机技术网(www.ctvol.com)!
本文来自网络收集,不代表计算机技术网立场,如涉及侵权请联系管理员删除。
ctvol管理联系方式QQ:251552304
本文章地址:https://www.ctvol.com/cdevelopment/1043387.html