java处理异常的机制关键字throw和throws使用解析
在异常处理的过程中,throws和throw的区别是?
throws:是在方法上对一个方法进行声明,而不进行处理,而是向上传,谁调用谁处理.
throw:是在具体的抛出一个异常类型.
throws的栗子:
throws的话,就是这个方法有可能会产生异常,而我只是将它声明出去,我自己不处理,如果有人调用的时候,可以知道,这个方法,有可能会抛出异常,我要是调用的话,我就得处理,或者接着throws.
格式是:方法名(参数)throws 异常类1,异常类2,.....
class Math{ public int div(int i,int j) throws Exception{ int t=i/j; return t; } } public class ThrowsDemo { public static void main(String args[]) throws Exception{ Math m=new Math(); System.out.println("出发操作:"+m.div(10,2)); } }
throw:在一个有异常中的方法中,可以进行捕获,也可以进行throws
注意throws:一旦被执行,程序就会立即转入异常处理阶段,后面的语句就不再执行了,而且所在的方法不再返回有意义的值.
public class TestThrow { public static void main(String[] args) { try { //调用带throws声明的方法,必须显式捕获该异常 //否则,必须在main方法中再次声明抛出 throwChecked(-3); } catch (Exception e) { System.out.println(e.getMessage()); } //调用抛出Runtime异常的方法既可以显式捕获该异常, //也可不理会该异常 throwRuntime(3); } public static void throwChecked(int a)throws Exception { if (a > 0) { //自行抛出Exception异常 //该代码必须处于try块里,或处于带throws声明的方法中 throw new Exception("a的值大于0,不符合要求"); } } public static void throwRuntime(int a) { if (a > 0) { //自行抛出RuntimeException异常,既可以显式捕获该异常 //也可完全不理会该异常,把该异常交给该方法调用者处理 throw new RuntimeException("a的值大于0,不符合要求"); } } }
文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值
相关推荐
-
详解Java编程中throw和throws子句的使用方法
Java throw:异常的抛出 程序可以用throw语句抛出明确的异常.Throw语句的通常形式如下: throw ThrowableInstance; 这里,ThrowableInstance一定是Throwable类类型或Throwable子类类型的一个对象.简单类型,例如int或char,以及非Throwable类,例如String或Object,不能用作异常.有两种可以获得Throwable对象的方法:在catch子句中使用参数或者用new操作符创建. 程序执行在throw语句之后立即
-
JAVA抛出异常的三种形式详解
一.系统自动抛出异常 当程序语句出现一些逻辑错误.主义错误或者类型转换错误时,系统会自动抛出异常 例一 public static void main(String[] args) { int a = 5; int b = 0; System.out.println( a / b); } 运行结果,系统会自动抛出ArithmeticException异常 Exception in thread "main" java.lang.ArithmeticException: / by zer
-
java的异常与处理机制分析【附面试题】
本文实例讲述了java的异常与处理机制.分享给大家供大家参考,具体如下: java的异常机制 Throwable类 Throwable类是Java异常类型的顶层父类,一个对象只有是 Throwable 类的(直接或者间接)实例,他才是一个异常对象,才能被异常处理机制识别.JDK中内建了一些常用的异常类,我们也可以自定义异常. Throwable又派生出Error类和Exception类. 错误:Error类以及他的子类的实例,代表了JVM本身的错误.错误不能被程序员通过代码处理,Error很少出
-
谈谈RxJava2中的异常及处理方法
前言 众所周知,RxJava2 中当链式调用中抛出异常时,如果没有对应的 Consumer 去处理异常,则这个异常会被抛出到虚拟机中去,Android 上的直接表现就是 crash,程序崩溃. 订阅方式 说异常处理前咱们先来看一下 RxJava2 中 Observable 订阅方法 subscribe() 我们常用的几种订阅方式: // 1 subscribe() // 2 Disposable subscribe(Consumer<? super T> onNext) // 3 Dispos
-
Java异常处理与throws关键字用法分析
本文实例讲述了Java异常处理与throws关键字用法.分享给大家供大家参考,具体如下: Java异常处理 认识异常: 1.异常是导致程序中断运行的一种指令流,如果不对异常进行正确处理,则可能导致程序的中断执行,造成不必要的损失. 2.异常范例 空指针异常 Exc e=null; System.out.println(e.i); 除0异常 int a=10; int b=0; System.out.println(a/b); 3.处理异常 异常格式: try{ 异常语句: } catch(Exc
-
详解Java异常处理中throw与throws关键字的用法区别
抛出异常 抛出异常有三种形式,一是throw,一个throws,还有一种系统自动抛异常.下面它们之间的异同. 系统自动抛异常 当程序语句出现一些逻辑错误.主义错误或类型转换错误时,系统会自动抛出异常.如: public static void main(String[] args) { int a = 5, b =0; System.out.println(5/b); //function(); } 系统会自动抛出ArithmeticException异常: Exception in threa
-
基于Java中throw和throws的区别(详解)
系统自动抛出的异常 所有系统定义的编译和运行异常都可以由系统自动抛出,称为标准异常,并且 Java 强烈地要求应用程序进行完整的异常处理,给用户友好的提示,或者修正后使程序继续执行. 语句抛出的异常 用户程序自定义的异常和应用程序特定的异常,必须借助于 throws 和 throw 语句来定义抛出异常. throw是语句抛出一个异常. 语法:throw (异常对象); throw e; throws是方法可能抛出异常的声明.(用在声明方法时,表示该方法可能要抛出异常) 语法:[(修饰符)](返回
-
java处理异常的机制关键字throw和throws使用解析
在异常处理的过程中,throws和throw的区别是? throws:是在方法上对一个方法进行声明,而不进行处理,而是向上传,谁调用谁处理. throw:是在具体的抛出一个异常类型. throws的栗子: throws的话,就是这个方法有可能会产生异常,而我只是将它声明出去,我自己不处理,如果有人调用的时候,可以知道,这个方法,有可能会抛出异常,我要是调用的话,我就得处理,或者接着throws. 格式是:方法名(参数)throws 异常类1,异常类2,..... class Math{ publ
-
简单了解Java关键字throw和throws的区别
这篇文章主要介绍了简单了解Java关键字throw和throws的区别,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 抛出异常有三种形式 throw throws 系统自动抛异常 一.系统自动抛异常 当程序语句出现一些逻辑错误.主义错误或类型转换错误时,系统会自动抛出异常:(举个栗子) public static void main(String[] args) { int a = 5, b =0; System.out.println(5/b
-
Java多线程之volatile关键字及内存屏障实例解析
前面一篇文章在介绍Java内存模型的三大特性(原子性.可见性.有序性)时,在可见性和有序性中都提到了volatile关键字,那这篇文章就来介绍volatile关键字的内存语义以及实现其特性的内存屏障. volatile是JVM提供的一种最轻量级的同步机制,因为Java内存模型为volatile定义特殊的访问规则,使其可以实现Java内存模型中的两大特性:可见性和有序性.正因为volatile关键字具有这两大特性,所以我们可以使用volatile关键字解决多线程中的某些同步问题. volatile
-
Java处理异常2种机制关键字区别解析
这篇文章主要介绍了java处理异常2种机制关键字区别解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下 在异常处理的过程中,throws和throw的区别是? throws:是在方法上对一个方法进行声明,而不进行处理,而是向上传,谁调用谁处理. throw:是在具体的抛出一个异常类型. throws的栗子: throws的话,就是这个方法有可能会产生异常,而我只是将它声明出去,我自己不处理,如果有人调用的时候,可以知道,这个方法,有可能会抛出异
-
java自定义异常以及throw和throws关键字用法
java中内置了很多可能在编程时出现的大部分异常.除此之外,用户可以使用一个类继承Exception类即可继承自定义类异常. 在程序中自定义类,大体上分为以下几个步骤: 1.创建自定义异常类 2.在方法中通过throw关键字抛出异常对象. 3.如果在当前抛出异常的方法中处理异常,可以使用try-catch语句块捕捉并处理异常,否则在方法的声明处通过throws指明要抛出给方法调用者的异常,继续进行下一步操作. 4.再出现异常的方法的调用者中捕获处理异常. 下面是我创建自定义异常.在项目中创建类M
-
Java try()语句实现try-with-resources异常管理机制操作
目录 Java try()语句实现try-with-resources异常管理机制 不使用try-with-resources时,使用的资源要在finally中进行释放 使用try-with-resources时 自定义AutoCloseable实现 try-with-resources语句优雅的关闭资源 在java1.7以前,我们关闭资源的方式如下 我们先直接上一个demo,方便理解 反编译之后我们可以看见 源码里面有解释 总结 Java try()语句实现try-with-resources
-
详细介绍Java关键字throw throws Throwable的用法与区别
目录 1. Throwable 1.1 扩展-Error 1.2 扩展-Exception 2. throws 2.1 扩展 3. throw 3.1 扩展 4. 总结 throw,意为“投掷.抛.扔”.Throw.Throws和Throwable三者都用于异常处理. 1. Throwable Throwable在Java中是异常处理这个分支的顶级父类,其它所有异常处理的实现都依赖于Throwable 打开Java官方文档(Java8版本),找到Throwable,它的直接子类为Error和Ex
-
Java异常处理的五个关键字
异常:异常有的是因为用户错误引起,有的是程序错误引起的,还有其它一些是因为物理错误引起的. 异常处理关键字:try.catch.finally.throw.throws 注意事项: 错误不是异常,而是脱离程序员控制的问题. 所有的异常类是从 java.lang.Exception 类继承的子类. 异常类有两个主要的子类:IOException 类和 RuntimeException 类. Java有很多的内置异常类. 异常大致分类: 用户输入了非法数据. 要打开的文件不存在. 网络通信时连接中断
随机推荐
- Angular.js通过自定义指令directive实现滑块滑动效果
- 分享vue.js devtools遇到一系列问题
- AngularJS中table表格基本操作示例
- Ubuntu搭建Java开发环境笔记
- Web 开发中Ajax的Session 超时处理方法
- 利用phpexcel把excel导入数据库和数据库导出excel实现
- C语言结构体(struct)常见使用方法(细节问题)
- jquery ajax属性async(同步异步)示例
- c语言多进程tcp服务器示例
- MySql数据分区操作之新增分区操作
- jQuery插件scroll实现无缝滚动效果
- Node.js返回JSONP详解
- JAVA中使用双括号来初始化静态常量的小技巧
- Spring与Mybatis基于注解整合Redis的方法
- 浅谈Java三目运算
- php生成与读取excel文件
- Android自定义View实现字母导航栏的代码
- Android生成带圆角的Bitmap图片
- 基于substring()和substr()的使用以及区别(实例讲解)
- jQuery删除/清空指定元素的所有子节点实例代码