final,finally,finalize,final static 的区别

final:用来修饰类,变量,方法:

final修饰的类不能有子类,也不能被继承。

final修饰的变量是一个常量,不能重新赋值。

final修饰的方法不能重写。

finally:通常放在try…catch…的后面构造总是执行代码块,这就意味着程序无论正常执行还是发生异常,这里的代码只要JVM不关闭都能执行,可以将释放外部资源的代码写在finally块中。

finalize:finalize是方法名,GC在回收未被引用的对象时会调用此方法,finalize()是Object类中的,因此所有类都继承它。覆盖了finalize()但未被引用的对象在被GC回收之前如果被其他类或者方法引用就可以免除被回收的命运。

final static:static强调只有一份,final说明是一个常量,final定义的基本类型的值是不可改变的,但是final定义的引用对象的值是可用改变的,static final修饰的引用对象的值不可以改变。


转载请注明来源,欢迎对文章中的引用来源进行考证,欢迎指出任何有错误或不够清晰的表达。可以在下面评论区评论,也可以邮件至 591235401@qq.com

文章标题:final,finally,finalize,final static 的区别

本文作者:阿杜同学

发布时间:2019-10-28, 20:21:45

最后更新:2019-10-28, 20:21:45

原始链接:http://yoursite.com/2019/10/28/final%EF%BC%8Cfinally%EF%BC%8Cfinalize%EF%BC%8Cfinal%20static%20%E7%9A%84%E5%8C%BA%E5%88%AB/

版权声明: "署名-非商用-相同方式共享 4.0" 转载请保留原文链接及作者。

目录