throw与throws、层层抛出异常

一:

throw 关键字throw用于抛出异常 抛除异常后处理 使用try-catch捕获异常 使用throws声明异常

语法 throw new 异常类构造方法; throw new Exception();

static int avg(int n1,int n2)throws CustomException{

if (n1<0||n2<0) { //判断方法参数是否满足条件 throw new CustomException("不能使用负数");//错误信息

} if (n1>100||n2>100) {

throw new CustomException("数值太大了");

} return (n1+n2)/2; // 将参数的平均值返回 }

二:

throws 用于方法上,指出方法引发的异常。

可以声明多种异常类型,用逗号分开即可。

示例 public void test throws 异常1,异常2,异常3{ }

任何方法都可以使用throws 子类覆盖父类,子类不能声明抛出父类范围更大的异常方法

三:

总结:

throw用于方法体中,用来抛出一个实际的异常对象。

使用throw后,要么使用try catch捕获异常,要么使用throws声明异常 throws用于方法声明处,用来声明该方法可能发生的异常类型,可以是多个异常类型,用来强制调用该方法时处理这些异常

抽象方法也可以使用throws,所以说并不是有throw才有throws 如果使用throw关键字抛异常,一定不要使用Exception,不能很好标记异常类型 如果throw要抛出与业务逻辑有关的异常,需要使用自定义异常类

时间: 2024-10-02 23:36:27

throw与throws、层层抛出异常的相关文章

Java中处理异常throw和throws

1.首先我们来了解什么是异常呢? 异常阻止当前方法或作用域继续执行的问题. 2.处理异常 说到处理异常,我们当然会想到 try catch finally 在java中我们会对异常的处理有更高的认识 我们会学习 throw throws等更好的处理异常 3.throw关键字:语句抛出异常   throws关键字:声明异常(方法抛出一个异常) 01.throw   是语句抛出一个异常. 语法:throw (异常对象);         throw e; 02. throws  是方法可能抛出异常的

异常机制及throw与throws的区别

Java的异常处理: Java的异常处理是通过5个关键字来实现的:try,catch,throw,throws,finally.Java的在线帮     助中对这几个关键字是这样解释的: Throws: Lists the exceptions a method could throw. Throws:列出一个方法可抛出的异常.       Throw: Transfers control of the method to the exception handler. Throw:将方法的控制权

throw跟throws关键字

定义一个方法的时候可以使用throws关键字声明.使用throws关键字声明的方法表示此方法不处理异常,而交给方法调用处进行处理. throws关键字格式: public 返回值类型 方法名称(参数列表,,,)throws 异常类{}: 假设定义一个除法,对于除法操作可能出现异常,可能不会.所以对于这种方法最好将它使用throws关键字声明,一旦出现异常, 则应该交给调用处处理. class Math{ public int div(int i,int j) throws Exception{

JAVA 异常 throw 与 throws

最近一直throw和throw new …… 获取头部罢工,要彻底生气清楚这件事,他对这个思想精华收集了很多网友.这里摘录. throws全部异常信息throw则是指抛出的一个详细的异常类型.通常在一个方法(类)的声明处通过throws声明方法(类)可能抛出的异常信息.而在方法(类)内部通过throw声明一个详细的异常信息.throws通常不用显示的捕获异常,可由系统自己主动将全部捕获的异常信息抛给上级方法:throw则须要用户自己捕获相关的异常,而后在对其进行相关包装,最后再将包装后的异常信息

异常概念和处理机制,try-catch-finally,throw和throws,自定义异常

异常概念和处理机制 什么是异常? 所谓异常就是指在程序运行的过程中发生的一些不正常事件.(如除0溢出,数组下标越界,所要读取的文件不存在); 异常导致的后果? Java程序的执行过程中如出现异常事件,可以生成一个异常类对象,该异常对象封装了异常事件的信息,其将被提交给Java运行时系统,这个过程称为抛出异常,不处理的话会导致程序直接中断; 如何防止程序中断? 设计良好的程序应该在程序异常发生时提供处理这些异常的方法,使得程序不会因为异常的发生而阻断或产生不可预见的结果; 异常分类 异常类型 包括

再探Java基础——throw与throws

转载:http://blog.csdn.net/luoweifu/article/details/10721543 以前虽然知道一些异常的处理,也用过一些,但是对throw和throws区别还是有不太清楚.今天用实例测试一下 异常处理机制 异常处理是对可能出现的异常进行处理,以防止程序遇到异常时被卡死,处于一直等待,或死循环 异常有两个过程,一个是抛出异常:一个是捕捉异常 抛出异常 抛出异常有三种形式,一是throw,一个throws,还有一种系统自动抛异常.下面它们之间的异同 系统自动抛异常

throw和throws子句的区别

import java.io.IOException public class ThrowDemo{ public static void processFile(String toFile) throws IOException { //Omitted implementation propagates all //throw  IOException back to the caller } public static void main(String[] args){ for(String

throw 、throws 简介

抛出异常抛出异常有三种形式,一是throw,一个throws,还有一种系统自动抛异常.下面它们之间的异同.系统自动抛异常当程序语句出现一些逻辑错误.主义错误或类型转换错误时,系统会自动抛出异常.如: 1 public static void main(String[] args) { 2 int a = 5, b =0; 3 System.out.println(5/b); 4 //function(); 5 } 系统会自动抛出ArithmeticException异常: 1 Exception

JAVA之旅(十)——异常的概述,Try-Catch,异常声明Throws,多异常处理,自定义异常,Throw和Throws的区别

JAVA之旅(十)--异常的概述,Try-Catch,异常声明Throws,多异常处理,自定义异常,Throw和Throws的区别 不知不觉,JAVA之旅这个系列已经更新到第十篇了,感觉如梦如幻,时间过得很快,转眼一个月就这样过去了,我们不多说,继续我们的JAVA之旅 一.异常的概述 异常算是程序中一个比较重要的环节了,我们首先来看一下异常的体系,我们举一个小例子,定义一个除法方法 //公共的 类 类名 public class HelloJJAVA { // 公共的 静态 无返回值 main方

java异常——五个关键字(try、catch、finally、throw、throws)

一.try.catch.finally常用组合 try{ xxx }catch(xxxException e){ e.printStackTrace(); } try{ xxx }catch(xxxException e){ e.printStackTrace(); }finally{ System.out.println("无论会不会抛异常,我就是会输出Σ(っ°Д°;)っ"); } try{ xxx }catch(AException e){ e.printStackTrace();