java面试强基(10)

news2024/12/23 9:36:06

 

Exception 和 Error 有什么区别? 

在 Java 中,所有的异常都有一个共同的祖先 java.lang 包中的 Throwable 类。Throwable 类有两个重要的子类:

  • Exception :程序本身可以处理的异常,可以通过 catch 来进行捕获。Exception 又可以分为 Checked Exception (受检查异常,必须处理) 和 Unchecked Exception (不受检查异常,可以不处理)。
  • Error :Error 属于程序无法处理的错误 。例如 Java 虚拟机运行错误(Virtual MachineError)、虚拟机内存不够错误(OutOfMemoryError)、类定义错误(NoClassDefFoundError)等 。这些异常发生时,Java 虚拟机(JVM)一般会选择线程终止。

 

Checked Exception 和 Unchecked Exception 有什么区别? 

Checked Exception 即受检查异常 ,Java 代码在编译过程中,如果受检查异常没有被 catch或者throws 关键字处理的话,就没办法通过编译。

除了RuntimeException及其子类以外,其他的Exception类及其子类都属于受检查异常 。常见的受检查异常有: IO 相关的异常、ClassNotFoundException 、SQLException...。

Unchecked Exception 即 不受检查异常 ,Java 代码在编译过程中 ,我们即使不处理不受检查异常也可以正常通过编译。

RuntimeException 及其子类都统称为非受检查异常,常见的有(建议记下来,日常开发中会经常用到):

  • NullPointerException(空指针错误)
  • IllegalArgumentException(参数错误比如方法入参类型错误)
  • NumberFormatException(字符串转换为数字格式错误,IllegalArgumentException的子类)
  • ArrayIndexOutOfBoundsException(数组越界错误)
  • ClassCastException(类型转换错误)
  • ArithmeticException(算术错误)
  • SecurityException (安全错误比如权限不够)
  • UnsupportedOperationException(不支持的操作错误比如重复创建同一用户)

 

Throwable 类常用方法有哪些? 

  • String getMessage(): 返回异常发生时的简要描述
  • String toString(): 返回异常发生时的详细信息
  • String getLocalizedMessage(): 返回异常对象的本地化信息。使用 Throwable 的子类覆盖这个方法,可以生成本地化信息。如果子类没有覆盖该方法,则该方法返回的信息与 getMessage()返回的结果相同
  • void printStackTrace(): 在控制台上打印 Throwable 对象封装的异常信息

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/30791.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Twitter网红账号营销,一定不能做的事

做社媒运营,我们都会创建一个官方账号与粉丝进行互动沟通,及时通知我们的新活动、产品,也是我们与粉丝建立联系的一个渠道方法。 推特群推王提示,虽然有这么多的好处,但是,也是有很多事项需要注意的&#…

服务器抓包简介

1、微服务服务器上抓包 2、在nginx服务器上抓包 1、服务器安装抓包软件 yum install -y tcpdump 2、服务器抓包命令 tcpdump -i any -s 0 -vvv -w /opt/qqgh.cap port 8080(本服务器该服务的实际ip地址) tcpdump -i eth0 host 10.30.224.170 -w result.…

14.函数的使用

函数的概念 函数是c语言的功能单位,实现一个功能可以封装成一个函数来实现。 定义函数的时候一切以功能为目的,根据功能去定函数的参数和返回值。 函数的分类 1.从定义角度分类(即函数是谁实现的) 库函数(c库实现的…

Fedora怎么设置主菜单快捷键? Fedora快捷键的设置方法

Fedora主菜单可以设置打开快捷键,该怎么设置呢?下面我们就来看看Fedora快捷键的操作方法。 同时按【ALTF2】,输入gnome-terminal,打开终端。 单击右上角的主菜单按钮。 单击【配置文件首选项】。 单击【快捷键】。 单击【显示主菜…

使用DIV+CSS进行网页布局设计【HTML节日介绍网站——二十四节气】

🎉精彩专栏推荐 💭文末获取联系 ✍️ 作者简介: 一个热爱把逻辑思维转变为代码的技术博主 💂 作者主页: 【主页——🚀获取更多优质源码】 🎓 web前端期末大作业: 【📚毕设项目精品实战案例 (10…

【linux】进程概念

文章目录前言进程状态一、普遍的操作系统1、运行状态2、阻塞状态小结(重要知识点)3、新建/就绪状态4、挂起状态小结二、linux操作系统Linux内核源代码1、运行状态(R)2、(浅度)睡眠状态(S&#x…

HTML CSS JS 网页设计作业「我的家乡吉林」

家乡旅游景点网页作业制作 网页代码运用了DIV盒子的使用方法,如盒子的嵌套、浮动、margin、border、background等属性的使用,外部大盒子设定居中,内部左中右布局,下方横向浮动排列,大学学习的前端知识点和布局方式都有…

HTML小游戏12 —— 汽车赛道飙车游戏(附完整源码)

💂 网站推荐:【神级源码资源网】【摸鱼小游戏】🤟 前端学习课程:👉【28个案例趣学前端】【400个JS面试题】💅 想寻找共同学习交流、摸鱼划水的小伙伴,请点击【摸鱼学习交流群】💬 免费且实用的计…

【WSL】【Opencv】【C++】在windows中使用WSL开发C++程序的环境搭建

文章目录基本环境Ubuntu安装Opencv从源码安装opencv-4.x从源码安装opencv-3.x直接pkg包安装CLion工程cmake文件写法demo基本环境 (1)安装WSL; (2)安装cmake: wget https://github.com/Kitware/CMake/rele…

作为运维你还在想要不要学Python?听听运维老司机怎么说

概述 今天闲聊下为什么我比较建议运维人员去学python… 建议运维一定要会开发 (文末送读者福利) 现阶段,掌握一门开发语言已经成为高级运维工程师的必备技能,不会开发,你就不能充分理解你们系统的业务流程&#xff…

SpringSecurity(十六)---OAuth2的运行机制(中)-密码、客户端凭据授权类型以及刷新令牌

一、前言 本篇将讨论剩余的授权类型以及使用刷新令牌重新获得令牌等内容,仍然以概念为主。下一节我们将通过一个SSO实例让大家对授权码授权类型更加熟悉。 二、实现密码授权类型 此授权类型也被称为资源所有者凭据授权类型。使用此流程的应用程序会假定客户端收集…

Spark 3.0 - 6.ML 自定义 Transformer 踩坑大全

目录 一.新征程开始 - 道阻且长 二.从源码入手 - 一探究竟 1.Tokenizer 2.UnaryTransformer 三.取源码精髓 - 照猫画虎 四.从实际出发 - 小试牛刀 五.扫重重障碍 - 补阙挂漏 1.Task not serializable 2.jsonEncode only supports string 3.Invisibility Error 4.Non…

补充(三)完善保密性三种定义的通俗表述及等价性的证明

目录 DEFINITION 2.3 完美保密加密方案的定义 LEMMA 2.5 完美保密方案的等价定义(一) LEMMA 2.7 完美保密方案的等价定义(二) 三个等价定义的通俗描述 等价性的证明(手写过程) DEFINITION 2.3 完美保密加密方案的定义 一个在明文空间M上的加密方案…

web前端期末大作业 html+css家乡旅游主题网页设计 湖北武汉家乡介绍网页设计实例

家乡旅游景点网页作业制作 网页代码运用了DIV盒子的使用方法,如盒子的嵌套、浮动、margin、border、background等属性的使用,外部大盒子设定居中,内部左中右布局,下方横向浮动排列,大学学习的前端知识点和布局方式都有…

外卖项目05---套餐管理业务开发

套餐:一组菜品的集合 点击之后就会弹出下面的界面: 上面是后台的管理操作,下面是处理完成后在用户端展示的界面效果: 目录 一、新增套餐 70 1.1需求分析 70 1.2数据模型 70 ​编辑1.3新增套餐---代码开发---准备工作&梳理…

vtk.js滚动切片

关于滚动切片,官方有一个很好的例子,如下图: 关键代码 const mapper vtkImageMapper.newInstance(); mapper.setInputConnection(rtSource.getOutputPort()); mapper.setSliceAtFocalPoint(true);//这一行切片的光照焦点必须要设置为true,否…

CSDN周赛第十期总结

文章目录竞赛概述题解熊孩子摆拜访问题目描述数据范围样例输入样例输出代码走楼梯题目描述输入描述输出描述样例输入 1样例输出 1代码括号上色输入描述:输出描述:输入样例:输出样例:代码喜水青蛙题目描述输入描述:输出…

spark3.0.2搭建教程

spark3.0.2搭建教程 spark3.0.2安装教程 文章目录spark3.0.2安装教程一、前期准备二、spark搭建(一)搭建1、将spark上传到虚拟机上2、解压安装包(二)、standalone(独立部署)模型1、修改配置文件&#xff0…

学生HTML静态网页基础水平制作DIV+CSS+JavaScript技术制作美食网页——美食城6页面

👨‍🎓静态网站的编写主要是用HTML DIVCSS JS等来完成页面的排版设计👩‍🎓,常用的网页设计软件有Dreamweaver、EditPlus、HBuilderX、VScode 、Webstorm、Animate等等,用的最多的还是DW,当然不同软件写出的…

高等数学(第七版)同济大学 习题10-2(前10题) 个人解答

高等数学(第七版)同济大学 习题10-2(前10题) 函数作图软件:Mathematica 1.计算下列二重积分:\begin{aligned}&1. \ 计算下列二重积分:&\end{aligned}​1. 计算下列二重积分:​​ (1)∬D(x2y2)dσ,…