final关键字

final是最终的意思,修饰类时表示不能被继承,修饰方法时表示不能被重写,修饰变量时表示只能被赋值一次。

1.修饰类:

final关键字_第1张图片

原本可以继承,加上final不可继承:

final关键字_第2张图片

通常一些工具类会加final关键字

2.修饰方法

final关键字_第3张图片

原本可以重写,加上final后不可以被重写:

final关键字_第4张图片

3.修饰变量

final关键字_第5张图片

加上final后:

final关键字_第6张图片

变量会分为局部变量和成员变量,成员变量分为静态成员变量和实例成员变量

静态成员变量:

final关键字_第7张图片

加上final后必须对其赋值,不然会报错:
final关键字_第8张图片

final关键字_第9张图片

4.注意事项

final修饰基本类型的变量,变量存储的数据不能被改变

final修饰引用类型的变量,变量存储的地址不能被改变,但地址所指对象的内容可以改变比如数组

final关键字_第10张图片

字符串是引用类型变量,但是加了final修饰后,字符串的内容不能改变。这是因为final修饰的变量必须赋初值,并且作为一个常量不能修改值。在Java中,字符串是不可变的,即一旦创建就不能被修改。当我们对字符串进行修改时,实际上是创建了一个新的字符串对象,而原来的字符串对象保持不变。因此,加了final修饰后,字符串的内容不能改变。

你可能感兴趣的:(java,开发语言)