Java 面试常见问题之——final,finalize 和 finally 的不同之处

Java 面试常见问题之------final,finalize 和 finally 的不同之处

1. final:

  • 是一个关键字,可以修饰变量、方法和类。
  • 修饰变量时,表示该变量的值一旦被初始化就不能被修改。
  • 修饰方法时,表示该方法不能被重写。
  • 修饰类时,表示该类不能被继承。

2. finalize:

  • 是 Object 类中的一个方法。
  • 垃圾回收器在回收对象之前会调用该方法,用于进行一些清理操作,但不能保证一定会被调用,也不建议过度依赖它来进行资源清理。

3. finally:

  • 通常与 try-catch 语句一起使用。
  • 无论 try 块中的代码是否发生异常,finally 块中的代码都会被执行,常用于释放资源等必须要执行的操作。

综上所述,final 用于修饰变量、方法和类,finalize 是对象销毁前可能被调用的方法,finally 用于确保特定代码块无论如何都会执行。

相关推荐
我是一颗柠檬8 小时前
【MySQL全面教学】MySQL面试高频考点汇总Day15(2026年)
数据库·后端·mysql·面试
星空椰9 小时前
Python 面向对象高级:继承与类定义详解
开发语言·python
橙淮9 小时前
并发编程(六)
java·jvm
拽着尾巴的鱼儿9 小时前
springboot openfeign 自定义feign 接口重试机制
java·spring boot·后端
白露与泡影9 小时前
2026大厂Java面试题大全!牛客网最新版
java·开发语言
凯瑟琳.奥古斯特9 小时前
高阶子查询题目精炼
开发语言·数据库·python·职场和发展·数据库开发
雪度娃娃9 小时前
转向现代C++——在意为改写的函数添加 override
开发语言·c++
EntyIU10 小时前
JVM内存与GC笔记
java·jvm·笔记
swipe10 小时前
DeepAgents 实战:用多 Agent 架构搭一个深度调研助手
javascript·面试·llm
XS03010610 小时前
并发编程 六
java·后端