【面向对象高级】final关键字的使用

简介

final 是Java中的一个修饰符,声明 final 方法的主要目的是防止该方法的内容被修改,final 是一个重要的Java语法,对于阅读源码和代码的理解很有帮助 !

1. final的单词理解:最终的,所以一旦被final修饰,就基本不能改变了

2. final可以用来修饰的结构:类、方法、变量

2.1 final修饰类,表示此类不能被继承。

	   比如:String、StringBuilder、StringBuffer

【面向对象高级】final关键字的使用_第1张图片

2.2 final 修饰方法,表示方法不能被重写 。

		  比如: Object类的getClass()方法

【面向对象高级】final关键字的使用_第2张图片

2.3 final修饰变量:既可以修饰成员变量,也可以修饰局部变量。此时的 “变量” 其实已经变成了 “常量” ,意味着一旦赋值,就不可更改。

2.3.1 final 修饰成员变量:被 final 修饰的成员变量只允许3种赋值方式:

	- 显式赋值
	- 代码块赋值
	- 构造器赋值
	这3种方法都是一旦赋值,不可更改,其中由于一个构造器将来可以构造一个对象,
	所以在一个构造器中赋值后同样不能修改,但是允许多个构造器的。

【面向对象高级】final关键字的使用_第3张图片

2.3.2 final 修饰局部变量:一旦被赋值就不能修改

  • 方法内声明的局部变量:在调用局部变量前,一定要赋值,而且一旦赋值,就不可更改
  • 方法的形参:在调用此方法时给形参赋值,一旦赋值,就不可更改

​​​​​​​【面向对象高级】final关键字的使用_第4张图片

3. final 与 static 搭配:修饰成员变量时,兼具两者的特点,全局常量。

	比如:Math.PI

【面向对象高级】final关键字的使用_第5张图片

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