Java面试宝典每日3题:day23

Posted 闲言_

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Java面试宝典每日3题:day23相关的知识,希望对你有一定的参考价值。

1.Error 和 Exception 区别是什么?

  Error类型错误通常为虚拟机相关错误,如 系统崩溃、内存不足、堆栈溢出等,编译器不会对这类错误进行检测,Java应用程序也不会对这类错误进行捕获,一旦这类错误发生,通常应用程序会被终止, 仅靠应用程序本身无法恢复
  Exception类的错误 可以在应用程序中捕获并处理,遇到这种错误,应对其进行处理,使应用程序可以继续运行。

2. 运行时异常和一般异常(受检异常)区别是什么?

  运行时异常包括RuntimeException类及其子类,表示JVM在运行期间可能出现异常。 Java编译不会检查运行时异常
  受检查的异常不包括RuntimeException及其子类之外的异常。 Java编译成会检查受检查异常
  RuntimeException和受检查异常的 区别
  是否强制要求调用者 必须处理此异常,如果强制要求调用者必须强制进行处理,那么就使用受检查异常,否则就使用非受检查异常(RuntimeException)。一般来讲如果没有特殊要求, 建议使用RuntimeException异常

3. throw 和 throws 的区别是什么?

  Java 中的异常处理除了包括 捕获异常处理异常之外,还包括 声明异常拋出异常,可以通过 throws 关键字在方法上声明该方法要拋出的异常,或者在方法内部通过 throw 拋出异常对象。
   区别如下:
  throw关键字用于 方法内部,只能用于抛出 一种异常,用来抛出 方法或者 代码块中的异常,受检查和非受检查的异常都可以抛出。
  throws关键字用于 方法声明上,可以抛出 多个异常,用来标识该方法可能抛出的异常列表,。一个方法有throws标识了可能抛出的异常列表,调用该方法的方法中 必须包含可处理异常的代码,否则也要在方法签名中 用throws关键字声明相应的异常

以上是关于Java面试宝典每日3题:day23的主要内容,如果未能解决你的问题,请参考以下文章

Java面试宝典每日3题:day22

Java面试宝典每日3题:day31

Java面试宝典每日3题:day18

Java面试宝典每日3题:day24

Java面试宝典每日3题:day17

Java面试宝典每日3题:day21