Java的throws Exception
转:https://www.cnblogs.com/feichengwulai/articles/3793261.html
1、(终极解释!!!)throws Exception放在方法后边,是throws Exception表示的是本方法不处理异常,交给被调用处处理(如果你不希望异常层层往上抛,你就要用throws Exception) ,而且被调用处必须处理。
2、throw new Exception 表示人为的抛出一个异常,例如:
public boolean insert(News n) {
try{
.....
}catch{
throw new Exception("这是我自己抛出的一个异常,如果我看到此段信息表示我这个方法这儿出错了,给自己看的!");
}finally{
}
}
3,首先方法后边加上throws Exception的作用是抛出异常。其中Exception可以理解为所有异常,也可以抛出指定异常。如果方法后边不加throws Exception,方法出了异常就会向上传递抛出(如果方法有调用者,那就交给调用者处理,如果调用者继续一层层抛出,最终交给虚拟机,虚拟机处理,整个程序会中断! 如果在程序中捕获 还可以继续进行。)。
4,如果有异常你不用层层向上抛出那么你就要用throws Exception,然后在调用时加上try catch语句处理...。。。如果有异常我一般选择这种处理方法。相比不用throws Exception,加上了throws Exception后,调用该方法时,必须加上try...catch才可以(你加上throw exception。调用的地方就必须try catch,不然编译都不过。。这样代码就更健壮了。)。
相当于一种约束,如果不加throws Exception,在多个地方调用方法时,添加try...catch也可以,但是有时候就会忘记加try...catch。
5,另外异常处理的原则是尽可能早的catch异常,正常的程序不应该写throws Exception。
6,运行异常(继承RuntimeException)可以不捕获,向上抛,如果一直没有处理,则jvm会自动处理(停止线程,打印异常)。
---非运行期异常,必须捕获或者在方法声明。
public class helloworld {
public static void main(String[] args) {
// TODO Auto-generated method stub
// System.out.printf("hello.java");
try {
test();
} catch (Exception e) {
System.out.printf(e.getMessage());
}
}
/*
*
* throws
* Exception:如果出现未知错误,会跑出Exception。如果这里加了异常捕捉,调用test方法时,就要加上try...catch
*/
private static void test() throws Exception {
ArrayList list = new ArrayList();
int x = 1;
int y = 2;
int z = 3;
if (x + y >= z) {
System.out.printf("逻辑正确!");
} else {
throw new Exception("test方法有问题"); // 手动抛出一个异常
}
}
}
Java的throws Exception相关推荐
- java的异常处理简单说明之————throws exception
Java 中异常的处理 throws Exception放在方法后边,表示的是本方法不处理异常,交给被调用处处理(如果你不希望异常层层往上抛,你就要用throws Exception) ,而且被调用处 ...
- java 方法 throws_Java异常处理之------Java方法中throws Exception使用案例!什么情况下使用throws Exception?...
@ava 中异常的处理 1.(终极解释!!!)throws Exception放在方法后边,是throws Exception表示的是本方法不处理异常,交给被调用处处理(如果你不希望异常层层往上抛,你 ...
- Java基础(七)--Exception异常处理
发现错误的理想时机是程序运行之前(编译期),然后不太现实,很多异常无法被发现(特别是业务上的数据),需要在运行时解决. 错误恢复机制保证代码健壮性的方式,异常处理在程序中很常见,也是必须的,必须考虑有 ...
- Thinking in java中关于Exception的一道面试题.
今天看到Thinking in Java中一个关于Exception的例子: 最后看到有一篇总结的比较好的文章, 这里拿来记录下, 文章地址是:http://blog.csdn.net/salerzh ...
- Java 异常基础 Exception
Java中的异常 Exception java.lang.Exception类是Java中所有异常的直接或间接父类.即Exception类是所有异常的根类. 比如程序: public class Ex ...
- 关于Spring 声明式事务处理时,throws exception不回滚的问题
文章转自:http://cn-done.iteye.com/blog/775519 前一段时间,项目代码评审,发现有TX不使用Spring的事务处理,而直接封装方法,手动进行数据的回滚,得悉原因是:抛 ...
- java关于throw Exception的一个小秘密
文章目录 简介 throw小诀窍 总结 java关于throw Exception的一个小秘密 简介 之前的文章我们讲到,在stream中处理异常,需要将checked exception转换为unc ...
- java中的exception stack有时候不输出的原因
有时候,我们在看java错误日志时,只看到一个java.lang.NullPointerException,却没有看到错误的栈,原因是启动时候有一项参数可以选择配置:OmitStackTraceInF ...
- java中throws用法_java中throws实例用法详解
在程序出现异常时,会有一个抛出异常的throw出现,这里我们要跟今天所讲的throws区分开.throws的作用是声明抛出,在名称上也跟throw有所不同.下面我们就throws对策概念.语法.实例带 ...
- Java异常处理throws/throw
Java的异常被分为两大类:Checked异常和Runtime异常(运行时异常). • Runtime异常:所有的RuntimeException类及其子类的实例: • Checked异常:不是Run ...
最新文章
- python神秘的魔法函数_python进阶之魔法函数
- 007_SpringBoot文件上传
- JAVA File方法各类文件复制操作
- AAAI 2021 | 用于图拓扑演化的深度图谱进化网络
- django_form表单的提交
- bfc是什么_一次弄懂css的BFC
- 二、项目运行环境【PMP 】
- Tensorflow——会话
- 定时执行自动化脚本-(一)导入保存jmeter参数至文件的jar包
- 第11章 支撑向量机 SVM 学习笔记 下
- 最新Activity与Fragment完全理解
- 【Qt】Qt5.14.2配置yaml-cpp
- 推荐6本Java书籍,助你在Java路上更精进!
- 单片机编程歌曲c语言发如雪,51单片机电子琴制作
- 少年,我看你骨骼精奇,见与你有缘,这套算法赠你
- java lockmodetype_java – 如何使用Spring Data JPA查找实体时如何启用LockModeType.PESSIMISTIC_WRITE?...
- VMBox挂载共享文件时可能出现的问题以及对应的解决办法
- java计算机二级知识点、易错点整理(一)
- 前端开发:JS中关于正则表达式的使用汇总
- 2022春招前端实习面经【美团、钉钉、快手、字节、招行、百度、拼多多、腾讯】(未完)
热门文章
- [UESTC SC T1] 最大疯子树
- js高级学习笔记(b站尚硅谷)-13-作用域链
- python冒泡排序_python实现基本算法之冒泡排序(Bubble Sort)
- python中randint用法_python中的randint,引入模块
- php data取年月,PHP-date函数 年、月、日参数详解
- ffmpeg rtmp 不清晰_SRS流媒体服务器之RTMP协议分析(2)
- Excel解析的几种实现方式
- 服务器硬盘和台式机有什么区别,服务器和电脑主机有什么区别?
- Git(3):git clone远程GitHub仓库代码出现“Permission Denied (publickey)”问题
- 密码学基础(四):OpenSSL命令详解