static可以修饰的元素:属性、方法、代码块
被static修饰的变量特点:所有对象共享,在类被载入时创建,只要类存在,static变量就存在,可以直接通过类名.属性访问;也可以实例化后通过对象名.属性访问;
被static修饰的方法特点:不需要实例化,可以直接通过类名.方法名()访问,也可以实例化后通过对象名.方法名()访问,被static修饰的方法作用: 便于访问静态属性;
被static修饰的静态代码块: 一个类中由static关键字修饰的,不包含在任何方法体中的代码块,当类被载入时,静态代码块被执行,且只被执行一次,静态块经常用来进行类属性的初始化。
与static相比,被final修饰的方法不能被覆盖、变量不能被修改、类不能被继承。