一、final关键字:
1.修饰变量:意为不可变,即jvm会将其分配到常量池中,程序不可改变其值;
2.修饰方法:则该方法在子类中将不能被重写;
3.修饰类:则类不能被继承,jdk中的一些基本类库被定义成final,例如String,Mathr等,可以防止对系统造成危害。
二、static关键字:
1.修饰成员变量:jvm会将将其分配在内存堆上;
2.static修饰方法:直接通过类名来调用而不需要新建对象;
3.static块:静态代码块,在类加载期间执行并且只执行一次,可以用来加载静态资源(如图片、视频等)。
三、final static:
static final修饰的成员变量被称为常量,必须声明时初始化并且不可被改变;
static final常量在编译期间会被取代为其初始值。