java final .static修饰符
Posted 明理
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了java final .static修饰符相关的知识,希望对你有一定的参考价值。
- static静态修饰符(使用static修饰符修饰的成员变量、常量、和成员方法成为静态变量、常量和方法,他们统称为静态成员,归整个类所有,不依赖于类的特定实例,被类的所有实例共享,只要这个类被加载,JVM就可以根据类名在运行时数据区的方法区找到他们)
- 静态变量
对于静态变量,运行时,JVM只为静态变量分配一次内存,在加载类的过程中完成静态变量的内存分配。在类的内部,可以在任何方法内直接访问静态变量;在其他类中,可以通过类名访问该类中的静态变量。
静态变量可以被类的所有实例共享,因此静态变量可以作为实例之间的共享数据,增加实例之间的交互性。
如果类中所有实例都有一个相同的常量属性,则可以把这个属性定义为静态变量。例如:
static double PI=3.1415;
2.静态方法
静态方法不需要通过它所属的类的任何实例就可以被调用,因此在静态方法中不能使用this关键字,也不能直接访问所属类的实例变量和实例方法,但是可以直接访问所属类的静态变量和静态方法,另,和this一样,super也与类的特定实例有关,所以在静态方法中也不能使用。
以上是关于java final .static修饰符的主要内容,如果未能解决你的问题,请参考以下文章
Java修饰符 abstract,static,final 的区别详解
Java——面向对象进阶(final关键字,static关键字,匿名对象,内部类,包的声明与访问,四种访问修饰符,代码块)
浅析java修饰符之public default protected private static final abstract