什么是区别?
public static void Main()
和
private static void Main()
在一个C#控制台应用程序中如何使用Main()
方法?特别是与public
和private
的区别有关的部分我已经了解。
什么是区别?
public static void Main()
和
private static void Main()
在一个C#控制台应用程序中如何使用Main()
方法?特别是与public
和private
的区别有关的部分我已经了解。
Main
方法不需要是public
。如果您决定将其设置为public
,则其他类或程序集可以从中调用。通常情况下,您不需要这样做,因此可以将其保留为private
。public
的一种可能的用例是允许自动化测试调用它。public
和 private
访问修饰符之间,因为两者都是有效的。它完全取决于应用程序的使用方式来决定使用哪一个。如果您知道该应用程序没有外部使用,则最好将其设置为私有,以便没有外部应用程序可以访问它。
对于大多数目的,这不会有任何影响。 Microsoft 倡导将 Main 方法设置为私有。
做这件事情的唯一实际价值(就我所知)是可以防止其他应用程序代码库直接调用 Main 方法。
关于此有一个很好的讨论,可以在这里找到。
这两个变量是不同的,因为第一个是公有的,而第二个是私有的。所以,当你尝试从类外部使用第一个变量时,它可以正常工作,但是对于第二个变量则不行。
但是,如果你尝试将其中一个变量作为应用程序的入口点,就没有区别了。 入口点方法可以是公有的或私有的,这并不重要。
public和private是访问修饰符。
我们使用,
public static void Main()
因为要执行程序,你需要调用包含这个Main()方法的类,在那之前,你需要将你的Main()方法设置为public,否则它将无法在类外部访问。
而它被设置为static的原因是,因为它需要在不创建该类任何对象的情况下被访问,也就是在类级别上。
class myClass{
public void test(){
//do something
}
}
myClass mClass=new myClass();
mClass.test();
class myClass{
public static void test(){
//do something
}
}
现在要访问它,您只需要简单地执行以下操作:
myClass.test();
private--> access to own class
public --> open to alll
public
,但如果不重要,则使用private
。
public
。因为从概念上讲,操作系统是从类的外部调用它,所以不应该使用 "private
"。我们中有些人还反对将主函数作为方法,但这是另一个问题。 - geometrian