一、final是什么?
final关键字是最终的意思,可以修饰(类、方法、变量)。
二、final的作用
修饰类:表明该类是最终类,不能被继承;
报错说明:不发从最终的Animal类继承
修饰方法:表明该方法是最终方法,不能被重写;
报错说明:父类方法eat()方法是最终的,所以子类不能重写eat()来覆盖
修饰变量:表明该变量第一次赋值后,不能再次被赋值(有且仅能赋值一次)。
- 修饰局部变量
报错说明:不能为最终变量rate赋值
报错说明:final修饰完局部变量可以先不赋值,但是最终还是只能赋值一次
- 修饰静态变量
报错说明:不能为最终变量schoolName赋值
如果用final修饰了静态变量必须要初始化静态变量的值;不然就会报错
- 修饰实例成员变量
报错说明:不能为最终变量name赋值
报错说明:如果用final修饰了实例变量,必须初始值实例变量的值;否则报错。
三:final修饰变量的注意点
final修饰的变量是基本类型:这个变量存储的数据值不能发生改变。
final修饰的变量是引用类型:那么这个变量存储的地址值不能发生改变,但是地址指向的对象内容是可以发生改变的。