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

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

1. final:

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

2. finalize:

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

3. finally:

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

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

相关推荐
invicinble9 小时前
对tomcat的提供的功能与底层拓扑结构与实现机制的理解
java·tomcat
发现一只大呆瓜10 小时前
前端性能优化:图片懒加载的三种手写方案
前端·javascript·面试
较真的菜鸟10 小时前
使用ASM和agent监控属性变化
java
黎雁·泠崖10 小时前
【魔法森林冒险】5/14 Allen类(三):任务进度与状态管理
java·开发语言
2301_7634724610 小时前
C++20概念(Concepts)入门指南
开发语言·c++·算法
TechWJ11 小时前
PyPTO编程范式深度解读:让NPU开发像写Python一样简单
开发语言·python·cann·pypto
qq_124987075311 小时前
基于SSM的动物保护系统的设计与实现(源码+论文+部署+安装)
java·数据库·spring boot·毕业设计·ssm·计算机毕业设计
Coder_Boy_11 小时前
基于SpringAI的在线考试系统-考试系统开发流程案例
java·数据库·人工智能·spring boot·后端
Mr_sun.11 小时前
Day06——权限认证-项目集成
java
瑶山11 小时前
Spring Cloud微服务搭建四、集成RocketMQ消息队列
java·spring cloud·微服务·rocketmq·dashboard