转: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相关推荐

  1. java的异常处理简单说明之————throws exception

    Java 中异常的处理 throws Exception放在方法后边,表示的是本方法不处理异常,交给被调用处处理(如果你不希望异常层层往上抛,你就要用throws Exception) ,而且被调用处 ...

  2. java 方法 throws_Java异常处理之------Java方法中throws Exception使用案例!什么情况下使用throws Exception?...

    @ava 中异常的处理 1.(终极解释!!!)throws Exception放在方法后边,是throws Exception表示的是本方法不处理异常,交给被调用处处理(如果你不希望异常层层往上抛,你 ...

  3. Java基础(七)--Exception异常处理

    发现错误的理想时机是程序运行之前(编译期),然后不太现实,很多异常无法被发现(特别是业务上的数据),需要在运行时解决. 错误恢复机制保证代码健壮性的方式,异常处理在程序中很常见,也是必须的,必须考虑有 ...

  4. Thinking in java中关于Exception的一道面试题.

    今天看到Thinking in Java中一个关于Exception的例子: 最后看到有一篇总结的比较好的文章, 这里拿来记录下, 文章地址是:http://blog.csdn.net/salerzh ...

  5. Java 异常基础 Exception

    Java中的异常 Exception java.lang.Exception类是Java中所有异常的直接或间接父类.即Exception类是所有异常的根类. 比如程序: public class Ex ...

  6. 关于Spring 声明式事务处理时,throws exception不回滚的问题

    文章转自:http://cn-done.iteye.com/blog/775519 前一段时间,项目代码评审,发现有TX不使用Spring的事务处理,而直接封装方法,手动进行数据的回滚,得悉原因是:抛 ...

  7. java关于throw Exception的一个小秘密

    文章目录 简介 throw小诀窍 总结 java关于throw Exception的一个小秘密 简介 之前的文章我们讲到,在stream中处理异常,需要将checked exception转换为unc ...

  8. java中的exception stack有时候不输出的原因

    有时候,我们在看java错误日志时,只看到一个java.lang.NullPointerException,却没有看到错误的栈,原因是启动时候有一项参数可以选择配置:OmitStackTraceInF ...

  9. java中throws用法_java中throws实例用法详解

    在程序出现异常时,会有一个抛出异常的throw出现,这里我们要跟今天所讲的throws区分开.throws的作用是声明抛出,在名称上也跟throw有所不同.下面我们就throws对策概念.语法.实例带 ...

  10. Java异常处理throws/throw

    Java的异常被分为两大类:Checked异常和Runtime异常(运行时异常). • Runtime异常:所有的RuntimeException类及其子类的实例: • Checked异常:不是Run ...

最新文章

  1. python神秘的魔法函数_python进阶之魔法函数
  2. 007_SpringBoot文件上传
  3. JAVA File方法各类文件复制操作
  4. AAAI 2021 | 用于图拓扑演化的深度图谱进化网络
  5. django_form表单的提交
  6. bfc是什么_一次弄懂css的BFC
  7. 二、项目运行环境【PMP 】
  8. Tensorflow——会话
  9. 定时执行自动化脚本-(一)导入保存jmeter参数至文件的jar包
  10. 第11章 支撑向量机 SVM 学习笔记 下
  11. 最新Activity与Fragment完全理解
  12. 【Qt】Qt5.14.2配置yaml-cpp
  13. 推荐6本Java书籍,助你在Java路上更精进!
  14. 单片机编程歌曲c语言发如雪,51单片机电子琴制作
  15. 少年,我看你骨骼精奇,见与你有缘,这套算法赠你
  16. java lockmodetype_java – 如何使用Spring Data JPA查找实体时如何启用LockModeType.PESSIMISTIC_WRITE?...
  17. VMBox挂载共享文件时可能出现的问题以及对应的解决办法
  18. java计算机二级知识点、易错点整理(一)
  19. 前端开发:JS中关于正则表达式的使用汇总
  20. 2022春招前端实习面经【美团、钉钉、快手、字节、招行、百度、拼多多、腾讯】(未完)

热门文章

  1. [UESTC SC T1] 最大疯子树
  2. js高级学习笔记(b站尚硅谷)-13-作用域链
  3. python冒泡排序_python实现基本算法之冒泡排序(Bubble Sort)
  4. python中randint用法_python中的randint,引入模块
  5. php data取年月,PHP-date函数 年、月、日参数详解
  6. ffmpeg rtmp 不清晰_SRS流媒体服务器之RTMP协议分析(2)
  7. Excel解析的几种实现方式
  8. 服务器硬盘和台式机有什么区别,服务器和电脑主机有什么区别?
  9. Git(3):git clone远程GitHub仓库代码出现“Permission Denied (publickey)”问题
  10. 密码学基础(四):OpenSSL命令详解