抛出异常的语法格式为:
throw 异常对象;
例如:
throw new NullPointerException();
或IllegalArgumentException e = new IllegalArgumentException();
throw e;
该代码书写在方法或构造方法的内部.该语法中,使用throw关键字,后续为代表对应异常情况的异常类类型的对象.当系统执行到该代码时,将中止当前方法的执行,而直接返回到调用该方法的位置.所以在该代码下面不能直接书写其它的代码,因为这些代码将永远无法执行到.例如:
throw new NullPointerException();
int n = 10; //语法错误,该代码无法到达
按照该语法,则上面的转换方法改造以后的代码如下:
/**
* 将自然数转换为二进制或八进制字符串
* @param value 需要转换的自然数
* @param radix 基数,只能取2或8
* @return 转换后的字符串
*/
public static String toString(int value,int radix){
//判断异常的代码
if(value <0){
throw new IllegalArgumentException("需要转换的数字不是自然数!");
}
if(radix != 2 && radix != 8){
throw new IllegalArgumentException("进制参数非法");
}
if(value == 0){
return "0";
}
StringBuffer s = new StringBuffer();
int temp; //余数
while(value != 0){ //未转换结束
temp = value % radix; //取余数
s.insert(0,temp); //添加到字符串缓冲区
value /= radix; //去掉余数
}
return s.toString();
}
这里,当value的值小于0时,则抛出非法参数异常,当radix的值不是2或8时,则抛出非法参数异常.
这样在执行如下代码:
System.out.println(toString(12,2));
System.out.println(toString(12,16));
则程序的执行结果是:
1100
Exception in thread "main" java.lang.IllegalArgumentException: 进制参数非法
at ThrowException.toString(ThrowException.java:22)
at ThrowException.main(ThrowException.java:7)
这里当参数符合要求时,则输出正确结果1100,如果参数不合法,则抛出异常,由于异常没有得到处理,则将终止程序的执行,则控制台输出异常的信息,并显示异常的类型以及异常出现的位置.
这样,就通过抛出异常的语法,使得该方法的逻辑比较严谨,在方法的参数不合法,即出现异常情况时,将这个异常报告出来,使得该方法不会出现错误的结果.
另外,抛出的异常将传递给运行时系统,这样就将这种异常的情况传递出来,提醒其它的结构进行处理.

转载于:https://www.cnblogs.com/521taobao/archive/2012/03/17/2402477.html

java语言程式设计——异常处理语法 3相关推荐

  1. Java语言的基础语法

    内容: 关键字 标识符 注释 常量和变量 运算符 语句 函数 数组 一.关键字 1.概述:被Java语言赋予特定含义的单词 2.特点:组成关键字的字母全部小写 goto和const为保留字 二.标识符 ...

  2. Java的12个语法糖【转】

    本文转载自公众号  Hollis 原创: 会反编译的 Hollis 侵权删 本文从 Java 编译原理角度,深入字节码及 class 文件,抽丝剥茧,了解 Java 中的语法糖原理及用法,帮助大家在学 ...

  3. java语言程序设计你_清华大学出版社-图书详情-《Java语言程序设计》

    前言 Java语言是一种典型的面向对象的.跨平台的.支持分布式和多线程的优秀编程语言,具有极强的扩展性.自其诞生以来,迅速被业界认可并广泛应用于Web应用程序的开发中.在此形势下,国内高校在计算机及相 ...

  4. Java语言程序设计(一)简答题和论述题

    1.什么是面向对象技术 ?它有什么优点 ? 通过面向对象的方式, 将现实世界的物抽象成对象, 现实世界中的关系抽象成类. 继承,帮助人们实现对现实世界的抽象与数字建模. 程序设计者考虑的是对象的描述. ...

  5. JAVA语言程序设计教程张席_Java语言程序设计教程

    第1章 预备知识 1 1.1 目前流行的编程语言简介 1 1.1.1 C/C 的一些概念 1 1.1.2 从C到C 2 1.1.3 面向对象初步知识 3 1.2 从C/C 到Java 4 习题 5 第 ...

  6. java中检查性异常类_Java异常处理、java语言推崇使用检查类型异常

    异常处理是java语言的重要特性之一,<Three Rules for effective Exception Handling>一文中是这么解释的:它主要帮助我们在debug的过程中解决 ...

  7. JAVA语言概述和基本语法知识点

    2017 2.16  周四 打开DOS命令的方式: 1.Windows+R 2.命令提示符 打开指定位置: shift+右键 选择在此处打开命令窗口 常用的dos命令 Dir : 查看     cd空 ...

  8. Java基础语法 第2节 Java语言基本语法

    一.标识符和关键字 1.标识符 1)java中标识符用来为程序的白能量.常量.方法.类.接口和包名命名,标识符由字母.数字.下划线.美元符号组成,且第一个字符不能是数字: 2)标志符命名规则:见名知意 ...

  9. Java语言特性运用:各种Java语法特性是怎样被Spring各种版本巧妙运用的?

    Java语法变化 Java5(2004): 枚举.泛型.注解.封箱(解箱)- Java6(2006): @Override接口 Java7(2011): Diamond语法.多Catch.Try- J ...

最新文章

  1. 漫画 | 辞职前与老板的最后一次谈话有哪些禁忌?
  2. malloc 和 calloc的区别?
  3. 矩阵分析与多元统计12 0-1矩阵 交换矩阵与Kronecker乘积
  4. matlab中所遇到的问题,【总结】【matlab】【机器学习】学习过程中遇到的问题总结...
  5. [转载]用数学逻辑推断三国武将排名
  6. 关于sliverlight4 打印功能
  7. 力扣-116. 填充每个节点的下一个右侧节点指针
  8. NOI.AC NOIP2018 全国热身赛 第四场
  9. python实现禁忌搜索算法
  10. 人脸识别眨眼张嘴软件_手机端APP活体真活人检测扫描人脸识别SDK之张嘴摇头眨眼点头确认真人非...
  11. 手绘几何图形识别(下)
  12. 计算机无法信任的英文,关于信任的英语名言佳句语录
  13. SQL常用的一些关键字
  14. jQuery根据ID删除元素
  15. android 单位转换工具,Android单位转换工具类
  16. 河北首家城商行传统核心业务国产化,TDSQL突破三“最”为秦皇岛银行保驾护航
  17. Java面试题-前端ES6
  18. UTC、GMT、时间戳之间的关系
  19. 如何在线生成动态gif图片?轻松一键教你在线制作gif
  20. JS动态创建元素(两种方法)

热门文章

  1. Shiro的多Realm验证的实现--shiro实现不同身份使用不同Realm进行验证
  2. 如何使用txt文件实现JMeter参数化
  3. MySQL工具介绍及环境搭建
  4. grDevices | R语言中的配色方法汇总(Ⅱ-2)
  5. java 放行文件_springmvc中关于静态资源的放行
  6. 动态网页和静态网页的区别是什么?
  7. 分页地址的地址结构怎么理解?
  8. while的用法和格式描述符
  9. delphi语言转为汇编语言_计算机语言
  10. 问题记录_初始化带有string的结构体