黑马程序员技术交流社区

标题: 加static与不加static的区别是什么?为什么? [打印本页]

作者: 王靖雯    时间: 2012-12-23 17:13
标题: 加static与不加static的区别是什么?为什么?
本帖最后由 王靖雯 于 2012-12-24 19:39 编辑

加static与不加static的区别是什么?为什么?
作者: Sailing.    时间: 2012-12-23 17:47
加static的为静态字段或者静态方法。静态字段和方法为类所共有,同时静态方法只能访问静态字段和方法。
作者: ︶ㄣ布丁    时间: 2012-12-23 17:49
加了static就说明是一个静态变量,这个变量只在类第一次被装载是被装载一次,以后所有变量都共享改变量。这样通过static 可以实现在所有的一类对象中实现共享变量的方法,只要有任何 一个对象对该值修改别的变量也能的到修改得值。而一般的类变量职能在一个对象的内部共享。
作者: 罗代势    时间: 2012-12-23 18:49
前者是类的,以类名来引用;后者是实例对象的,以对象名来引用!!!
作者: 李家小爷    时间: 2012-12-23 19:36
加static可以不用实例化,直接调用,静态类中的成员必须全是静态的成员。
作者: 阮佳佳    时间: 2012-12-23 22:10
写代码说明吧:
Class Person
{
    static void SayHello()
           {  Console,WriteLine("hello!"); }
     void SayNo()
            {Console.WriteLine("no!");}
}
Pesson.SayHello();
Person person=new Person();
person.SayNo();
作者: 鲜学良    时间: 2012-12-24 11:35
static 为类的成员,不加则为类的对象的成员。
static 成员直接可以通过类名来调用,但类实例不能调用。

作者: 管冉    时间: 2012-12-24 18:34
加了static后,只有本文件内才能访问该变量。不加,则所有文件都可以访问该变量
作者: 管冉    时间: 2012-12-24 18:36
苏坤老师《C#面向对象基础》视频2里有详细解说




欢迎光临 黑马程序员技术交流社区 (http://bbs.itheima.com/) 黑马程序员IT技术论坛 X3.2