请问:
既然世界上有static这个属性,那访问一个类中的方法/属性的时候就可以
Class1.StaticMethod(...); 而不用先实例化一个类那既然这样 为什么不把所有的方法和属性都定为static。我访问的时候就都不用实例化类了啊。我想不通这个问题(虽然这个问题比较傻),请教大家呵呵。

解决方案 »

  1.   

    静态成员也叫共享成员,可以看成类的全局对象.
    有静态字段staticItem 实例A 给它赋一个值A,则staticItem =A实例B 给它赋一个值B,则staticItem 变成B
      

  2.   

    哈哈 楼上大哥讲得很生动啊 不错 
    suiqirui19872005(biy) 说始终占着内存 但是假如实例化一个类 不也是占着堆的一个空间吗
    难道static的值是放在堆栈中的?而且我还不明白的是,当A设置了一个static变量的值以后假如有另外一个人B也去设置它 是被覆盖还是重新生成一个。也就是说 是引用类型还是之类型的数据?
      

  3.   

    破坏封装性 daishengs(横舟摆渡) 
    看来程序员 把什么都想成程序模式了啊 连女朋友也想成这样
      

  4.   

    我有一本C#设计模式的书 就是GoF的那些模式啊 
    不过我只看到工厂模式....嘎嘎
      

  5.   

    既然世界上有static这个属性,那访问一个类中的方法/属性的时候就可以
    Class1.StaticMethod(...); 而不用先实例化一个类
    那既然这样 为什么不把所有的方法和属性都定为static。我访问的时候就都不用实例化类了啊。
    ※※※※※※※※※※※※※※※※※※※※※※※※※※※※※※很简单,因为世界上除了需要操作数据的方法以外还需要保存数据的变量(属性),不同的对象拥有不同数据,所以一定要实例化类来创建对象。