final 在 java 中有什么作用?
1.【修饰类】
1.被final修饰的类不能被继承
2.被final修饰的类所有成员方法都将被隐式修饰为final方法
2.【修饰变量】
被final修饰的变量一旦获得初始值就不可改变,不能被重新赋值
修饰成员变量
必须设置初始值,不能被重新赋值
修饰局部变量
必须设置初始值,不能被重新赋值
修饰基本类型变量
只能赋值一次,不能被重新赋值
修饰引用类型变量
引用在初始化后将永远指向一个内存地址,不可修改,但是该对象里面的信息,可以修改
3.【修饰方法】
1.方法不能被重写
2.方法内敛: 当调用一个方法时, 系统需要进行保存现场信息, 建立栈帧, 恢复线程等操作, 这些操作都是相对比较耗时的. 如果使用final修饰一个了一个方法a, 在其他调用方法a的类进行编译时, 方法a的代码会直接嵌入到调用a的代码块中.