关于static关键字的详解

来源:互联网 发布:java按空格分割字符串 编辑:程序博客网 时间:2024/05/18 17:23

一、static表示“全局”或者“静态”的意思;

二、可以用来修饰成员变量和成员方法,也可以形成静态static代码块,但是Java语言中没有全局变量的概念。

    1、 静态变量
         1.  static变量并不是所在类的某个具体对象所有,而是该类的所有对象所共有的,静态变量既能被对象调用,也能直接拿类来调用;
         2.  静态变量不能引用非静态方法,原因加载静态的时候,非静态的变量、方法等还不存在,当然就无法引用了。但是,非静态方法或类却能正常引用静态变量或方法。因为非静态总是在静态之后出现的。
    2、 静态方法
   1. 静态方法和静态变量一样,属于类所有,在类加载的同时执行,不属于某个具体的对象,所有对象均能调用。
         2. 对于静态方法需要注意以下几点:
                  它们仅能调用其他的static 方法。
                  它们只能访问static数据。
                  它们不能以任何方式引用this 或super。
         3. 静态方法一般用于工具类中,可以直接拿类名调用工具方法进行使用。
    3、 静态类
            一般来说静态类,只有在内部类中可以将其声明为static。此时,外部类可以直接调用内部类,因为static的内部类是在加载外部类的同时加载的,所以也就是说,并不要实例化外部类就能直接调用静态内部类。    

原创粉丝点击