常见四种用法:
- 可以用来修饰一个类
- 被final修饰的类不可以被继承,不允许有子类
- 可以用来修饰一个方法
- 被final修饰的方法不能被覆盖重写
- 对于类、方法来说,abstract关键字和final关键字不能同时使用,因为矛盾
- 还可以用来修饰一个局部变量
- 被final修饰的变量,值不可改变(只允许赋值一次)
- 对于基本类型来说,不可变说的是变量当中的数据不可改变
- 对于引用类型来说,不可变说的是变量当中的地址值不可改变
- 被final修饰的变量,值不可改变(只允许赋值一次)
- 还可以用来修饰一个成员变量
- 由于成员变量具有默认值null,所以用了final修饰之后必须手动赋值,不会再给默认值了
- 对于final的成员变量,要么使用直接赋值,要么通过构造方法赋值
- 如果通过构造方法赋值,必须保证类当中所有重载的构造方法都最终会对final的成员变量进行赋值