美文网首页
Java 中的static关键字

Java 中的static关键字

作者: 耳光可响 | 来源:发表于2017-12-25 11:31 被阅读0次

引子:曾经看见一句话,初学Java你就该知道static可以修饰方法和变量。学Java一年你就该知道静态内部类。学Java三年你就该知道静态代码块。

1.静态变量

  Java中static只能修饰成员变量,不能修饰局部变量。静态变量存储于JVM内存区的Method Area(方法区)。static常与final一起使用,定义常量。

2.静态方法

  静态方法在类定义的时候已经被装载和分配,静态方法可以直接通过类名调用。静态方法只能调用static修饰的成员变量和方法,静态方法不持有this引用。

3.静态内部类

  static修饰类的时候,只能修饰内部类。因为匿名内部类和非静态内部类隐式的持有外部类的this引用,所以经常在Android中使用来避免内存泄露。单例模式可以通过静态内部类的方式构造,classloader的机制可以保证初始化instance时只有一个线程,所以也是线程安全的。

4.静态代码块

  静态代码块是在虚拟机加载类的时候执行的,只执行一次。如果有多个static代码块JVM将按照它们在类中出现的先后顺序依次执行它们。非静态代码块是在类new一个实例的时候执行,而且是每次new对象实例都会执行。

    静态代码块是主动执行的,静态方法是被调用的时候才执行的。

5.静态导入

  静态导入是JDK1.5之后的新特性。可以在导包的时候import static导入包也可以直接导入静态方法。在使用的时候可以直接方法名调用。虽然静态导包减少了代码,但是牺牲了代码的可读性。使用的时候要慎重。

相关文章

  • 1.3 static 关键字

    static 关键字 《Java编程思想》 中:static方法就是没有this的方法 static 修饰的方法或...

  • java面试问题总结与分享,很乱

    java中static关键字的作用 在Java中static表示“全局”或者“静态”的意思,用来修饰成员变量和成员...

  • Kotlin学习2

    1.Kotlin中static在kotlin中 没有static关键字,但是有类似java中static的用法例如...

  • Java static关键字

    声明static属性 static是Java中定义的一个关键字,主要是描述全局的概念,所以利用static关键字可...

  • Java中的static和final

    java中的static和final 此篇文章是记录我在学习Java中static和final关键字的笔记。 st...

  • Java static关键字

    Java之美[从菜鸟到高手演变]之Java中static关键字

  • 复习Java基础资料

    Java中面向字符的输入流 Java中的static关键字解析 Java中的main()方法详解 Java中普通代...

  • Java Static 用法

    Java中的Static关键字用的很多,但是总结起来,大概有:Static member、Static Block...

  • Java:3分钟带你全面了解Static静态关键字

    前言 在Java中,静态 Static关键字使用十分常见 本文全面 & 详细解析静态 Static关键字,希望你们...

  • java基础知识面试题

    static关键字什么意思?java中是否可以覆盖一个private或者是static的方法? “static”表...

网友评论

      本文标题:Java 中的static关键字

      本文链接:https://www.haomeiwen.com/subject/noqlgxtx.html