Java关键字——throws和throw
throws关键字
在定义一个方法时,可以使用throws关键字声明,使用throws声明的方法表示此方法不处理异常,而交给方法的调用处进行处理。
使用了throws关键字,表示不管是否会有异常,在调用此方法处都必须进行异常处理
//=================================================
// File Name : throws_demo
//------------------------------------------------------------------------------
// Author : Common // 类名:Math
// 属性:
// 方法:
class Math{
public int div(int i,int j) throws Exception{ //本方法中可以不处理异常
int temp = i/j; //此处有可能产生异常
return temp; //返回计算结果
}
} //主类
//Function : throws_demo
public class throws_demo { public static void main(String[] args) {
// TODO 自动生成的方法存根
Math m =new Math(); //实例化Math对象
try{ //因为由throws,不管是否由异常,都必须处理
System.out.println("除法操作="+m.div(1, 0));
} catch (Exception e){
e.printStackTrace(); //打印异常
} } }
与throws不同的是,可以直接使用throw抛出一个异常,抛出时直接抛出异常类的实例化对象即可
//=================================================
// File Name : throws_demo
//------------------------------------------------------------------------------
// Author : Common // 类名:Math
// 属性:
// 方法:
class Math{
public int div(int i,int j) throws Exception{ //本方法中可以不处理异常
int temp = i/j; //此处有可能产生异常
return temp; //返回计算结果
}
} //主类
//Function : throws_demo
public class throws_demo { public static void main(String[] args) {
// TODO 自动生成的方法存根
Math m =new Math(); //实例化Math对象
try{ //因为由throws,不管是否由异常,都必须处理
System.out.println("除法操作="+m.div(1, 1));
throw new Exception("自己抛出的异常");
} catch (Exception e){
e.printStackTrace(); //打印异常
} } }
throw和throws的应用
//=================================================
// File Name : throw_demo
//------------------------------------------------------------------------------
// Author : Common // 类名:math
// 属性:
// 方法:
class math{
public int div(int i,int j) throws Exception{ //本方法中可以不处理异常
System.out.println("******计算开始******");
int temp = 0; //声明整型变量
try{
temp =i/j; //如果产生异常,则执行catch
}catch(Exception e) { //捕获异常
throw e; //把异常交给被调用处
}finally{ //不管是否产生异常都执行此代码
System.out.println("******计算结束******");
}
return temp; //返回计算结果
}
} //主类
//Function : throw_demo
public class throw_demo { public static void main(String[] args) {
// TODO 自动生成的方法存根
Math m =new Math(); //实例化Math对象
try{
System.out.println("除法操作="+m.div(1, 1));
} catch (Exception e){ //进行异常的捕获
System.out.println("异常产生:"+ e ); //打印异常
} } }
Java关键字——throws和throw的更多相关文章
- Java中throws和throw的区别讲解
当然,你需要明白异常在Java中式以一个对象来看待.并且所有系统定义的编译和运行异常都可以由系统自动抛出,称为标准异常,但是一般情况下Java 强烈地要求应用程序进行完整的异常处理,给用户友好的提示, ...
- Java异常throws与throw的区别
throws关键字通常被应用在声明方法时,用来指定可能抛出的异常.多个异常可以使用逗号隔开.当在主函数中调用该方法时,如果发生异常,就会将异常抛给指定异常对象.谁调用谁处理: 抛出异常throws: ...
- Java -- 异常的捕获及处理 -- throws与throw关键字
7.2 throws 与 throw关键字 7.2.1 throws 关键字 在定义一个方法时可以使用throws关键字声明,使用throws声明的方法标识此方法不处理异常,而交给方法的调用处进行处理 ...
- Java异常机制关键字总结,及throws 和 throw 的区别
在Java的异常机制中,时常出现五个关键字:try , catch , throw , throws , finally. 下面将总结各个关键字的用法,以及throw和throws的区别: (1) t ...
- JAVA基础学习之throws和throw的区别、Java中的四种权限、多线程的使用等(2)
1.throws和throw的区别 throws使用在函数外,是编译时的异常,throw使用在函数内,是运行时的异常 使用方法 public int method(int[] arr) throws ...
- JAVA中的throws和throw的区别
Java 一直对java中的throws和throw不太理解.最近一直在查这两个方面的资料,算是能明白一点吧.如果我下面的观点哪有不对,希望指出来,我加以改进. throw:( ...
- -1-6 java 异常简单介绍 java异常 异常体系 Throwable 分类 throws和throw 异常处理 自定义异常
异常 异常:异常就是Java程序在运行过程中出现的错误. 异常由来:问题也是现实生活中一个具体事务,也可以通过java 的类的形式进行描述,并封装成对象. 其实就是Java对不正常情况进行描述 ...
- java的异常抛出throws和throw的简单使用
前提: 当在程序测试时,如果你需要定义一个自己的异常,而非现在已经存在的异常,这个时候你需要用到throws和throw,try-catch只是一个简单的捕获异常的过程. 代码如下: package ...
- java中的抛出异常throws与throw
throws与throw throws是方法可能抛出异常的声明.(用在声明方法时,表示该方法可能要抛出异常)语法:[(修饰符)](返回值类型)(方法名)([参数列表])[throws(异常类)]{.. ...
随机推荐
- java设计优化--单例模式
单例模式是一种对象创建模式,确保系统中一个类只有一个实例. 在java语言中,这样做有两大好处: 1.对于频繁使用的对象,可以省略创建对象所话费的时间: 2.由于new操作的次数减少,对于系统内存的使 ...
- jquery 获取Select option 选择的Text和Value
jquery radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中,及其相关设置 获取一组radio被选中项的值:var item = $(' ...
- [转]Spring注解原理的详细剖析与实现
原文地址:http://freewxy.iteye.com/blog/1149128/ 本文主要分为三部分: 一.注解的基本概念和原理及其简单实用 二.Spring中如何使用注解 三.编码剖析spri ...
- git之旅【第二篇】
1,git的安装 最早Git是在Linux上开发的,很长一段时间内,Git也只能在Linux和Unix系统上跑.不过,慢慢地有人把它移植到了Windows上.现在,Git可以在Linux.Unix.M ...
- solr-5.3部署到tomcat
下载 solr 5.3 版本: http://www.apache.org/dyn/closer.lua/lucene/solr/5.3.0 下载 Tomcat(6以上版本),另外可以根据系统下载 3 ...
- java基础2.0:Object、Class、克隆、异常编程
Java编程中两个重要的类Object 和 Class及java异常编程 (1)是所有Java类(API提供的类.自定义类)的最终父类. (2)作用:在JVM管理对象中的过程中,有一套统一的类型检查和 ...
- Maven报错: Missing artifact jdk.tools:jdk.tools:jar:1.7
pom.xml 有小红叉,报错: Missing artifact jdk.tools:jdk.tools:jar:1.7 解决方法:(缺少一个jar包) http://blog.csdn.net/u ...
- Java反射的一些理解
1.Class对象 VS. 实例对象 在Java中我们一般是这样使用类的:编写类,然后new对象,再调用方法.这里new出来的对象暂且称之为实例对象(instance).其实在这之前还涉及到一个Cla ...
- MapReduce基础知识
hadoop版本:1.1.2 一.Mapper类的结构 Mapper类是Job.setInputFormatClass()方法的默认值,Mapper类将输入的键值对原封不动地输出. org.apach ...
- kali2016.2源
最近中科大的源出了问题,官方源又会重定向到意大利. 一下源目前亲测可用:kali2016.2源 清华大学 deb http://mirrors.tuna.tsinghua.edu.cn/kali ka ...