2011-08-23 56 views
2

第一个示例创建程序类的一个实例。第二个不是。有人可以告诉我这两个简单模型发生了什么? (如果你愿意的话,你可以下来堆栈帧和minutae)为什么要使用?我想了解这些结构的优点和应用。运行主对象内部的对象实例与纯静态对象之间有什么区别?

//Example #1 
namespace ConsoleApp 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      Program createStory = new Program(); 
      createStory.PrintMe(); 
     } 


     private void PrintMe() 
     { 
      Console.Write("Hello World)); 
     } 

    } 
} 
//Example #2 
namespace ConsoleApp 
{ 
    class Program 
    { 
     static void Main(string[] args) 
     { 
      Console.Write("Hello World)); 
     } 
    } 
} 
+1

你的'PrintMe()'方法应该在你的第一个例子的'Program'类中。 –

+0

感谢nevayeshirazi –

回答

2

你已经说了究竟发生了什么 - 一个创建一个实例,然后调用一个方法,另一个直接完成它的工作。

通常情况下,第一种形式更适合于测试 - 您可以在每个测试中创建一个单独的应用程序实例,传入相关参数等。与其他类也是如此 - 如果您有任何状态,则更容易单独测试单独的实例,而不是使用全局状态,并且必须在测试之间进行清理。

相关问题