final

Posted 自学开发的老司机

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了final相关的知识,希望对你有一定的参考价值。

在JAVA中,继承提高的代码的复用性,但是随之而来的,也产生一个弊端,即打破了“封装性”,比如父类可以被子类复写,代码的安全性降低了。

在实际工作中,为了提高安全性,避免有的数据被继承复写或修改,这就要用到final进行修饰。

 

final,其字面意思含义是“最终”,表示已到终点,不能被改变、继承

 

 

1、可以修饰类、函数、变量

 

2、被final修饰的类(可以称为最终类),不可以被继承,被复写。

 

3、被final修饰的函数,不可以被复写。

 

4、被final修饰的变量是一个常量,只能附值一次,即可以修饰成员变量,也可以修饰局部变量。

  当描述事物时,一些数据是固定,如圆周率、光速音速等,这些值都可以被改变,所以要加上final。

  编写代码时,为了增强阅读性,都给这些值取个数字,并且用大写字母,如圆周率PI等。

  作为常量,其都要用大写字母书写,单独前用下划线“_”连接,方便代码阅读。

 

5、内部类定义在类中的局部位置上时,只能访问该局部被final修饰的局部变量

以上是关于final的主要内容,如果未能解决你的问题,请参考以下文章

finalfinally与finalize的区别

finalfinally与finalize的区别

浅析finalfinally和finalize之间的区分

finalfinalize 和 finally 的不同之处

Java面试题之finalfinally和finalize的区别

看完这篇 finalfinally 和 finalize 和面试官扯皮就没问题了