Java final finally finalize有什么不同
① final 可以用来修饰类、方法、变量,
----final修饰的class代表不可以继承扩展
----final的变量不可以修改
----final的方法不可以override
----final不是immutable,对于list,只能约束list这个引用不能被赋值,但list的对象行为不被final影响,添加元素等操作是完全正常的。
② finally是Java保证重点代码一定要被执行的一种机制,用try-finally 或 try-catch-finally进行类似关闭JDBC连接、保证unlock锁等动作。
----try-with-resources or try-finally是非常好的回收资源的方法。如果确实需要额外处理,可以考虑Java 提供的Cleaner机制或者其他代替方法。
③ finalize 是基础类java.lang.Object的一个方法,它设计的目的是保证对象在被垃圾收集前完成特定资源的回收。
----finalize机制现在已经不推荐使用(jdk9 deprecated)。不推荐使用的原因是无法保证finalize什么时候执行,执行的是否符合预期,使用不当会影响性能,导致程序死锁,挂起。
Java final finally finalize有什么不同的更多相关文章
- Java Final, Finally, Finalize
Final is a Keyword, final can be used in three different ways: final variable final method final cla ...
- C# abstract virtual override new finally java final finalize
virtual:声明虚方法.可以被其派生类所重写的.重写方法需要使用override或者new关键字. override:覆盖原方法.可对重写virtual.override.abstract进行重写 ...
- 【Java面试题系列】:Java中final finally finalize的区别
本篇为[Java面试题系列]第三篇,文中如有错误,欢迎指正. 第一篇链接:[Java面试题系列]:Java基础知识常见面试题汇总 第一篇 第二篇链接:[Java面试题系列]:Java基础知识常见面试题 ...
- final finally finalize
final //如果不是final 的话,我可以在checkInt方法内部把i的值改变(有意或无意的, //虽然不会改变实际调用处的值),特别是无意的,可能会引用一些难以发现的BUG ...
- 软件工程第三周的学习报告 html<input> final finally finalize 的比较 BigInteger
三月十三号下午: html的<input>的三个属性pattern(限定用户的输入格式)与placeholder(显示的)与required(不能为空) 代码案例: pattern与pla ...
- final,finally,finalize有什么区别?String, StringBuffer, StringBuilder有什么区别?Exception和Error有什么区别?
继上篇JVM学习之后,后面将分三期深入介绍剩余JAVA基础面试题,每期3题. 题目一.final,finally,finalize有什么区别? /*请尊重作者劳动成果,转载请标明原文链接:*/ /* ...
- Android源码中final关键字的用法及final,finally,finalize的区别
Android开发的学习流程 final,finally,finalize的区别 Android的发展越来越快,Android开发人员越来越多,当两种情况碰撞,在诸多开发者中跟紧Android步伐脱颖 ...
- final finally finalize 区别及用法
final 1,final修饰的class,代表不可以继承扩展. 2.final的方法也是不可以重写的. 3.final修饰的变量是不可以修改的.这里所谓的不可修改对于基本类型来来,的确是不可以修改. ...
- 一、基础篇--1.1Java基础-final, finally, finalize 的区别
final, finally, finalize 首先,这三个关键字没什么关联,只是放在一起比较像,用法用处完全不同. final: final关键字可以用来修饰类.方法.变量(成员变量和局部变量), ...
随机推荐
- VS添加命令行参数main(int argc, char** argv)
- securecrt 的安装
http://bbs.feng.com/read-htm-tid-6939481.html ssh -t ip地址@用户名 -p 22
- C++11新特性之六——元编程
C++11新特性之六——元编程
- c#图片生成png格式和原图不同
下面这种,会生成和原图类似的图片,png格式的图片该是空的地方仍旧是空的
- $.data(elem, key, val) 和 elem.data(key, val)
var div1 = $("div"), div2 = $("div"); 1. div1.data("key", &quo ...
- 常用的vue辅助工具vue-devtools
1,下载: https://github.com/datura-lj/vuedevtools 2,将下载好的文件拖到chrome拓展栏中(更多工具=>拓展程序): 3,修改计算机配置文件: wi ...
- Struts2中的OGNL详解 《转》
首先了解下OGNL的概念: OGNL是Object-Graph Navigation Language的缩写,全称为对象图导航语言,是一种功能强大的表达式语言,它通过简单一致的语法,可以任意存取对象的 ...
- fping命令测试主机存活
author:headsen chen date: 2018-10-09 20:11:22 1,测试一个范围内的主机: fping -a -g 192.168.1.1 192.168.1.255 ...
- Intellij IDEA同时打开多个项目
extends:http://www.kaifazhe.me/java/99.html 使用eclipse习惯的同学知道是可以同时多个项目查看的,只需要import就可以了,但Intellij IDE ...
- xpath定位方法小结(转载)
1.实例化一个浏览器WebDriver driver = new FirefoxDriver(); 2.driver.get() get传参数到浏览器中 3.常用定位方法webelement XX=d ...