静态方法只能用ClassName.Method()调用
且只能用static 字段

解决方案 »

  1.   

    两者本质上的区别就是静态方法不需要实例对象即可以访问调用
    在上面的程序中:如Test.ShowPanel(panel1,true)即可调用普通方法则需要实例对象才能调用
      

  2.   

    使用 static 修饰符声明属于类型本身而不是属于特定对象的静态成员。static 修饰符可用于字段、方法、属性、运算符、事件和构造函数,但不能用于索引器、析构函数或类型。不能通过实例引用静态成员。然而,可以通过类型名称引用它。例如,请考虑以下类: public class MyBaseC 
    {
       public static int MakeMoney(int money) {
          return ++money;
       }
    }可以这样使用
    MyBaseC.MakeMoney(10);
    甚至 using 了 MyBaseC 以后
    你可以直接 MakeMoney(10)了
    如果没有static 那么,这个对象必须实例化,也就是通常说的,先new 一下,才能使用。
    MyBaseC oMayBC = new MyBaseC();
    oMayBC.MakeMoney(10);
      

  3.   

    除了不必实例化之外,static的一个重要的用途就是它在内存中只有一个副本,如果不必在每一个对象中都复制此方法的副本,最好还是用static,可以节省空间:对于大型的工程来说可能是非常重要的
      

  4.   

    恩,RnfShadow()说的很对,我刚才拉下了....检讨,检讨...
      

  5.   

    LiSDN(LOCK ON) (的 
    可共用的使用静态,不能共用的用实例方法
    这个回答不错!
      

  6.   

    到底是static节省空间,还是实例化节省空间?
      

  7.   

    到底是static节省空间,还是实例化节省空间?还是struct最节省!!!!