黑马程序员技术交流社区

标题: void和static的用法? [打印本页]

作者: 李晓泉    时间: 2013-3-13 12:57
标题: void和static的用法?
本帖最后由 李晓泉 于 2013-3-13 13:00 编辑

void和static的用法有什么不同?

作者: 边亮    时间: 2013-3-13 13:04
void跟static没有关系
void表示有没有返回值!没有的话就加void有的话就用相应类型替换
static表示静态的,没有static修饰就表示非静态的
作者: 张怀晶    时间: 2013-3-13 18:51
void是一种返回值类型,表示无返回值。
    public void SayHi()   { console.writeline("你好");}
static是一种修饰符,表示静态的,可用于字段、方法、类、属性、构造函数等。
    public static void SayHi()   { console.writeline("你好");}
使用static时需注意:
    1.调用静态方法的时候必须通过类名直接来调用,不能通过对象来调用,也就是说使用静态成员不需要实例化对象。
      类名.方法名()
    2.静态成员会在整个应用程序退出时,才释放资源,所以可以在整个应用程序中共享数据。
    3.静态类不能被实例化,不能被继承。
    4.由于静态成员会在整个程序退出时,才释放资源,所以尽量避免写静态字段或静态属性,最好只写静态方法。
    5.当给一个普通类添加静态字段后,系统会默认为该类生成一个静态构造函数[静态构造函数不能有访问修饰符、并且也不能带参数]
         static MyStaticClass()
作者: 张怀晶    时间: 2013-3-13 18:58
void是方法的一种返回值类型,表示无返回值。
    public void SayHi() {Console.WriteLLIne("你好"); }
static是静态的修饰符,可修饰类、方法、属性、字段、构造函数等。
    public static void SayHi() {Console.WriteLLIne("你好"); }
使用static时应注意:
    1.调用静态方法的时候必须通过类名直接来调用,不能通过对象来调用,也就是说使用静态成员不需要实例化对象。
        类名.方法名();
    2.静态成员会在整个应用程序退出时,才释放资源,所以可以在整个应用程序中共享数据。
    3.静态类不能被实例化,不能被继承。
    4.由于静态成员会在整个程序退出时,才释放资源,所以尽量避免写静态字段或静态属性,最好只写静态方法。
    5.当给一个普通类添加静态字段后,系统会默认为该类生成一个静态构造函数[静态构造函数不能有访问修饰符、并且也不能带参数]
        static MyStaticClass();
作者: 张怀晶    时间: 2013-3-13 18:59
void是方法的一种返回值类型,表示无返回值。
    public void SayHi() {Console.WriteLLIne("你好"); }
static是静态的修饰符,可修饰类、方法、属性、字段、构造函数等。
    public static void SayHi() {Console.WriteLLIne("你好"); }
使用static时应注意:
    1.调用静态方法的时候必须通过类名直接来调用,不能通过对象来调用,也就是说使用静态成员不需要实例化对象。
        类名.方法名();
    2.静态成员会在整个应用程序退出时,才释放资源,所以可以在整个应用程序中共享数据。
    3.静态类不能被实例化,不能被继承。
    4.由于静态成员会在整个程序退出时,才释放资源,所以尽量避免写静态字段或静态属性,最好只写静态方法。
    5.当给一个普通类添加静态字段后,系统会默认为该类生成一个静态构造函数[静态构造函数不能有访问修饰符、并且也不能带参数]
        static MyStaticClass();
作者: 易鹤龙    时间: 2013-3-13 22:23
void 的方法没有返回值。 static 修饰符声明属于类型本身而不是属于特定对象的静态成员  也就是说直接用类名就能访问它。一个类新建有N个  对象,这N 个对象共享同一个static的方法
作者: 郑志强    时间: 2013-3-14 09:18
void 是表示方法没有返回值。  string int double 等表示相应返回类型。
static 是表示静态类型。
静态类中只能存在静态成员,不允许出现实例成员。
但是我们非静态类中可以有静态成员,也可以有非静态成员,
但是,静态成员访问不到实例成员。
非静态类中的非静态成员可以访问到静态成员。

经常把静态类当作工具类
我们最常用的当然是
Console.WriteLint()
作者: 熊薇    时间: 2013-3-14 15:06
void是方法的返回值类型,表示此方法没有返回值;如果方法有返回值,那么就用返回值的类型替换void
而有static表示是静态的,没有则为非静态的
void和static没有关系




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