对于final修饰的变量或者类,方法来说:
修饰类的时候,该类不能被继承,final类中的所有成员方法都会被隐式指定为final方法
修饰方法,第一:把方法锁定,防止继承类修改它的含义,第二:效率。
类中private方法会隐式的指定为final方法
修饰变量:如果是基本数据类型的变量,则数值一旦初始化后不能更改,如果是引用类型的变量,初始化之后便不能再让其指向另一个对象。
类的final变量和普通变量的区别:
当final作用于类的成员变量时,成员变量必须在定义时或者构造器中进行初始化赋值,而且final初始化后就不能在被赋值。
被final定义的基本数据类型或者string类型时,编译器会在编译中认识它,不会等到运行时,普通变量会在运行时通过链接访问。(必须是编译器确切知道final变量值的情况下)。
被final修饰的引用变量指向的对象内容可以变化。但是不能指向其他对象。指向的对象的内容可以改变。
static作用于成员变量用来表示只保存一份副本,而final的作用是用来保证变量不可变