java static 关键字的用法

  • 浏览:603
  • |
  • 更新:

java中,static关键字是很常用的,但是经常会在static的用法上犯错,经常搞不清楚static有哪些用法。下面我们就来说说static关键字的用法。

工具/原料

  • windows10
  • windows10
  • Intellij idea2018

方法/步骤

  1. 1

    static修饰的变量通常成为静态变量,static修饰的方法通常成为静态方法,tatic修饰的类通常称为静态类。可以这么理解:被static修饰的成员或方法不需要创建对象就能通过类名调用。

    修饰变量。static关键字可用于修饰类的成员变量,被static修饰的成员变量可以被静态方法和非静态方法访问。这里需要注意的是,非静态方法是可以访问静态变量的。如下图action1方法:

    java static 关键字的用法
  2. 2

    修饰方法。static关键字可用于修饰类的成员方法,被static修饰的方法可以被静态方法和非静态方法访问。同样,这里也需要注意,非静态方法是可以访问静态方法的,如下图action3方法:

    java static 关键字的用法
  3. 3

    但是静态方法就不能访问非静态方法,因为非静态方法是属于对象的,只有创建了对象才能调用。如下图main方法是不能直接访问action3方法的,必须先创建对象才能调用:

    java static 关键字的用法
  4. 3
    该信息未经授权抓取自百度经验
  5. 4

    修饰代码块。static关键字修饰代码块,主要用于做一些初始化的工作,static修饰代码块在类加载时就会被执行。如下图,我们并没有给成员name属性直接赋初始值,而是在static代码块中给name赋值,main函数打印name时,name的值输出到控制台了,说明name在static代码块中被初始化了。

    java static 关键字的用法
  6. 5

    修饰内部类。static修饰类,相比于修饰成员变量和成员方便,比较少见。如下图,使用static修饰内部类后,在main函数中可以直接使用类名直接调用静态的action1方法。

    java static 关键字的用法
    END

注意事项

  • 1.静态方法只能访问静态成员,而非静态方法能访问静态成员。
  • 2.static修饰类时只能修饰内部类,不能用在普通类上。
  • 3.静态方法方法内不能使用this,super关键字。
经验内容仅供参考,如果您需解决具体问题(尤其法律、医学等领域),建议您详细咨询相关领域专业人士。
展开阅读全部