逆袭之旅DAY28.XIA.异常处理
2018-07-24 14:42:24

第一种:
第二种:
第三种:







执行
try--catch--finally--return(执行return 退出方法)














代码示例:
输入数字,输出对应课程
1.如果输入的不是数字,抛出异常
2.如果输入的是数字,但数字没有对应的课程,抛出异常
throw new Exception();
catch 捕获对应异常,处理 或者 在方法声明的时候抛出异常类型,由方法的调用者处理异常
package day09.com.neusoft.test;
import java.util.Scanner;
public class InOutException {
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in);
System.out.println("请输入课程代号(1~3):");
try {
int a = input.nextInt();
if(a==1||a==2||a==3){
switch(a) {
case 1:
System.out.println("JAVA编程");
break;
case 2:
System.out.println("ORACLE数据库");
break;
case 3:
System.out.println("C语言编程");
break;
}
}else {
throw new Exception();
}
}catch(Exception e) {
System.out.println("您的输入不合法!");
}
System.out.println("欢迎提出建议!");
}
}
log4j
步骤:
1.在项目的目录下新建 lib文件夹
2.log4j.jar--->lib
3.build path 构建路径
4.log4j.properties--->项目目录或(包目录)下

package day09.com.neusoft.test; import org.apache.log4j.Logger; /**
* 数组下标越界异常
* @author ljj
*
*/
public class ArrayExcaption {
private static Logger jbit = Logger.getLogger(ArrayExcaption.class.getName());
public static void main(String[] args) { int[] arr = new int[] {1,2,3,4,5};
jbit.debug("数组的第一个值:"+arr[0]);
try {
//遍历数组
for(int i=0;i<=arr.length;i++){
System.out.println(arr[i]);
}
} catch (ArrayIndexOutOfBoundsException e) {
jbit.error("数组下标越界!",e);
//System.out.println("数组下标越界!"+e.getMessage());
}catch(Exception e) {
//e.getStackTrace();
jbit.error(e.getMessage());
}finally {
System.out.println("欢迎使用本程序!");
} } }
jbit是文件名
package day09.com.neusoft.test; import java.util.InputMismatchException;
import java.util.Scanner; import org.apache.log4j.Logger; /**
* 除法运算
* @author ljj
*
*/
public class InputaErrorException {
private static Logger logger = Logger.getLogger(InputaErrorException.class.getName());
public static void main(String[] args) {
// TODO Auto-generated method stub
Scanner input = new Scanner(System.in); //
try {
System.out.println("请输入被除数:");
int a = input.nextInt();
System.out.println("请输入除数:");
int b = input.nextInt();
System.out.println("a/b="+a/b);
logger.info("a/b="+a/b);
}catch(InputMismatchException ie) {
logger.error(ie.getMessage()); }catch(ArithmeticException ae) {
logger.warn(ae.getMessage());
} } }
try{
}finally{
}
可以这样用
逆袭之旅DAY28.XIA.异常处理的更多相关文章
- 逆袭之旅DAY.XIA.Object中常用方法
2018-07-31
- 逆袭之旅DAY31.XIA.JDBC
2018-07-31 MySQL package oop_emp.com.neusoft.dao; import java.sql.Connection; import java.sql.Driver ...
- 逆袭之旅DAY30.XIA.集合
2018年7月26日 面试题:List和set的区别 ArrayList 遍历效率较高,但添加和删除较慢 遍历集合最高效的方法:迭代器 集合的遍历: 迭代器:Iterator 创建 为什么使用泛型: ...
- 逆袭之旅DAY24.XIA.二重进阶、双色球
一. 选择题. 1. 以下关于二重循环的说法正确的是(D). A. 二重循环就是一般程序中只能有两个循环 B. While循环不能嵌套在for循环里 C. 两个重叠的循环不能嵌套在第三个循环里. D. ...
- 逆袭之旅DAY24.XIA.数组练习
2018-07-20 08:40:19 1. public void stringSort(){ String[] s = new String[]{"George"," ...
- 逆袭之旅DAY20.XIA.程序调试
2018-07-16 20:25:50 F5:进入方法 F6:单步执行
- 逆袭之旅DAY20.XIA.循环结构
2018-07-16 19:53:47 while循环 do do...while循环 for 循环
- 逆袭之旅DAY20.XIA.选择结构
2018-07-16 18:50:49 本章目标: 基本if选择结构 逻辑运算符 多重if选择结构 嵌套if选择结构 什么是if选择结构: if选择结构是根据条件判断之后再做处理 import ja ...
- 逆袭之旅DAY20.xia.师父指导.数据类型
2018-07-16 09:35:57 基础是王道 从码农--软件工程师--软件架构师 String 首字母大写,特殊引用类型,常量类 二.数组 存钱罐(只能放钱) 数据兼容 数组的长度(定义后长度 ...
随机推荐
- Kali Linux 更新源 操作完整版教程
一.查看kali系统的更新源地址文件 命令: vim /etc/apt/sources.list 上面这是kali官方的更新源: 拓展知识: 一个完整的源包括:deb 和 deb-src:上图源地址是 ...
- 学习笔记8—MATLAB中奇异值处理办法
一.Inf 和 NAN处理 lnf: 无穷大值,可以用islnf或者isfinite函数处理 NAN:不是一个数字,可以用isnan函数来处理 或者: 类似于这种处理 mn(find(mn<= ...
- icehouse版本中常用操作命令
•Glance操作常用命令1,列出所有镜像.glance image-list 2,显示某个image的详细信息.glance image-show 某个image的ID. 3,获得命令的帮助.gla ...
- ip网关配置
流量查看watch more /proc/net/devip子网查询https://www.sojson.com/convert/subnetmask.htmlhttp://ip.gchao.cn/ ...
- requests库使用:通过cookie跳过验证码登录,并用Session跨请求保持cookie
拿我平时测试的一个系统为例,从UI层面来说必须先登录才可以进行后续操作,但是我在测试接口文档提供的接口时,发现并不需要登录,每个接口只要传参就可以正常返回.原因是我们这边专门弄了一个接口包来统一管理常 ...
- MySQL utf8 和 utf8mb4 的区别
utf-8 时变化长度的编码,储存一个code point 需要1~4个字节. 然而,mysql的utf8只存储最多3个字节per code point. 所以,utf8字符集不能存储所有的unico ...
- 雷林鹏分享:XML 总结 下一步学习什么呢?
XML 总结 下一步学习什么呢? XML 总结 XML 可用于交换.共享和存储数据. XML 文档形成 树状结构,在"根"和"叶子"的分支机构开始的. XML ...
- 第十二周(MySort)
注意:研究sort的其他功能,要能改的动代码,需要答辩 模拟实现Linux下Sort -t : -k 2的功能. 要有伪代码,产品代码,测试代码(注意测试用例的设计) 参考 Sort的实现.提交博客链 ...
- 「SDOI2008」Sandy 的卡片
用第一个串建立后缀自动机.然后别的串在上面跑.从根节点开始.如果当前不能转移,一直移到slink或者根.如果移到根,能匹配长度变为0,否则变为maxlen[能转移的点]+1,再转移.转移完往slink ...
- hammer.js方法总结(只做了一个简单的demo)
html <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <titl ...