类的封装性决定了static最好是不要用的,违背了封装static 是属于类本身的

解决方案 »

  1.   

    对啊,把方法申明为static就可以直接调用这个方法,但是完全可以将类实例化在用这个方法。所以是等效的。
      

  2.   

    static不会破坏类的封装。只不过,一个函数是不是static的并不会造成任何的性能增益。
    麻烦楼主举几个例子。。
      

  3.   

    static和类的地位是等同的,为什么把static一般放在类内。也只是为了结构方便
    最好的例子就是窗体
    static void Main() 
    {
       Application.Run(new Form1());
    }即使FORM1窗体类不被实例化,MAIN()方法也可以被执行。
      

  4.   

    c#不允许有全局函数,那么,函数就一定需要包裹在类里,所以,我们调用MessageBox的时候,你会发现,并不是直接使用的,这个函数是System.Windows.Forms的一个静态函数,当然,我们不需要实例化一个form,只需要引用这个类,就可以使用MessageBox了。静态函数类似全局函数的功能,这样理解可以么?