static 变量只能在类中调用而不能在类的实例中调用

解决方案 »

  1.   

    也就是说,有一个类aaa
    那么static的变量就可以用aaa.ls_aa调用,实例变量只有aaa bb = new aaa();
    bb.ls_aa来调用
      

  2.   

    举个例子给你看
    //使用静态变量
    static string mystr="123";string myfunc() {
     string str=mystr+"asd";
    return str;    
    }
    myfunc();   // 123asd
    myfunc();   // 123asdasd
    myfunc();   // 123asdasdasd
    //非静态变量
    string mystr="123";string myfunc() {
     string str=mystr+"asd";
    return str;    
    }
    myfunc();   // 123asd
    myfunc();   // 123asd
    myfunc();   // 123asd
      

  3.   

    使用 static 修饰符声明属于类型本身而不是属于特定对象的静态成员。static 修饰符可用于字段、方法、属性、运算符和构造函数,但不能用于索引器、析构函数和类型。不能通过实例引用静态成员。然而,可以通过类型名称引用它。如:
    public class MyTypeC 
    {
       public struct MyStruct {
          public static int x = 10;
       }
    }
    x为一静态成员,若要引用x,只能使用完全限定名(除非可从相同范围访问): 
    MyType.MyStruct.x
    尽管类的实例包含该类所有实例字段的单独副本,但每个静态字段只有一个副本。