final用于定义不可变的变量、方法或类,保障不变性与安全性;finally确保异常处理中资源清理代码的执行;finalize是已被废弃的对象回收前清理方法,因不确定性与性能问题不推荐使用。

final
finally
finalize
final
finally
finalize
这三个关键字或方法,尽管在拼写上仅一字之差,但在Java编程中却有着截然不同的用途和生命周期。理解它们的区别,是写出健壮、高效Java代码的基础。
final
final
final
final
final
final
String
Integer
final
finally
finally
try-catch-finally
try
try
finally
try
catch
try
catch
try
return
finally
System.exit()
finally
finalize()
finalize()
java.lang.Object
finalize()
finalize()
final
在我看来,
final
final
final
String
Integer
public final class ImmutablePoint {
private final int x;
private final int y;
public ImmutablePoint(int x, int y) {
this.x = x;
this.y = y;
}
public int getX() { return x; }
public int getY() { return y; }
// 没有setter方法
// 也没有方法可以改变x或y的值
}在这个
ImmutablePoint
x
y
final
final
不可变性带来的好处是巨大的:
HashMap
HashSet
所以,
final
finally
try-with-resources
finally
try
catch
想象一下,如果你打开了一个文件,但在处理过程中抛出了异常,如果没有
finally
一个典型的
finally
FileInputStream fis = null;
try {
fis = new FileInputStream("file.txt");
// 读取文件内容...
// 假设这里可能抛出IOException
} catch (IOException e) {
System.err.println("文件操作失败: " + e.getMessage());
} finally {
if (fis != null) {
try {
fis.close(); // 确保文件流被关闭
} catch (IOException e) {
System.err.println("关闭文件流失败: " + e.getMessage());
}
}
}这段代码虽然有效,但存在一些冗余,特别是关闭资源的逻辑需要嵌套
try-catch
这时候,Java 7 引入的 try-with-resources
java.lang.AutoCloseable
try
try
finally
使用
try-with-resources
try (FileInputStream fis = new FileInputStream("file.txt")) {
// 读取文件内容...
// 假设这里可能抛出IOException
} catch (IOException e) {
System.err.println("文件操作失败或关闭文件流失败: " + e.getMessage());
}可以看到,
try-with-resources
finally
try-with-resources
finally
AutoCloseable
try-with-resources
finalize()
finalize()
finalize()
finalize()
finalize()
finalize()
finalize()
finalize()
finalize()
finalize()
finalize()
finalize()
try-with-resources
java.lang.ref.Cleaner
finalize()
我的建议是:忘掉 finalize()
try-with-resources
AutoCloseable
close()
finalize()
以上就是final, finally, finalize 三者有什么不同?的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号