1.final可修饰变量,方法,类:
修饰变量,系统会将该变量放到常量池中,并且不可被程序修改;
修饰方法,该方法不可被继承重写;
修饰类,该类不能被继承。
2.static可修饰变量,方法,类:
修饰变量,该变量会变成静态变量,jvm会把它放在内存堆上,所有的程序对他的引用都会指向这个地址,不会分配新的内存,它属于所在的类,不能被所在类的对象的引用,共享此变量。
修饰方法,该方法可以直接被所在的类调用,一般用于系统初始化。
修饰类,此类只能是内部类,这样外部类就可以直接调用类而不用新建对象。
3.static final 也可修饰变量,方法内部类:
修饰变量,属于类的变量只能赋值一次。
修饰方法,属于类的方法不可以被重写。
修饰内部类,该类不能被继承,但可以直接外部类调用,不用new对象。