static
用法
最基本的用法是,static 可以用于修饰成员变量和成员方法,我们将其称之为静态变量和静态方法,直接通过类名来进行访问。当一个事物为static时,就意味着这个域或方法不会与包含它的那个类的任何对象实例关联在一起,所以从未创建某个类的任何对象,也可以调用其static方法或访问其static域。
变量
static变量也称作静态变量,静态变量和非静态变量的区别是:静态变量被所有的对象所共享,在内存中只有一个副本,它当且仅当在类初次加载时会被初始化。而非静态变量是对象所拥有的,在创建对象的时候被初始化,存在多个副本,各个对象拥有的副本互不影响。static成员变量的初始化顺序按照定义的顺序进行初始化。
this
只能用在构造器或者方法中,用于获得调用当前的构造器方法的对象引用。可以和任何的对象引用一样来处理这个this对象
final
终态
编译器final修饰的变量 放到寄存器(非共享内存)
并发线程安全,程序任何对象的初始化happen-before于程序中任何其他的动作操作行为能够保证不被重排序
1 | public static void main(String[] args) { |
super
super是当前对象里面的父对象的引用,使用super来引用父类的某种东西