异常
作者:互联网
谁调用,谁处理
异常处理机制
**异常处理的5个关键字:
* 捕获异常: try/catch/finally
* 抛出异常: throw 可以手动抛出异常对象;例如: throw new Exception("您输入的数值存在负数!");
* 声明异常: throws 声明方法 可能要抛出的各种异常类,向上 传递异常,直到Main()函数!!:
* returnType methodName(....) throws ExceptionList{
* throw new ExceptionList("......");
* }
* class ExceptionList extends Exception{ //自定义的异常类
* }
保证程序可以正常运行
运行时异常RuntimeException:
Exception----------------------异常层次结构的根类
ArithmeticException------------算术错误情形,如以零作为除数
ArrayIndexOutOfBoundsException-数组下标越界
NullPointerException-----------尝试访问null对象成员
NumberFormatException----------数字格式转换异常,如把“abc”转换成数字
检查异常CheckedExcception:
检查异常是程序员必须进行处理
何时需要自定义异常
当JDK中的异常不能,满足程序需要时候
public class MyException extends Exception{//自定义异常 private int errorCode;//异常编码 public int getErrorCode() { return errorCode; } public void setErrorCode(int errorCode) { this.errorCode = errorCode; } public MyException() { } public MyException(int errorCode,String msg) { super(msg); this.errorCode = errorCode; } }
public static void main(String[] args) { System.out.println("请输入1~3之间的任何一个数:"); Scanner input = new Scanner(System.in); try{ int num=input.nextInt(); if (num==1){ System.out.println("课程1"); }else if (num==2){ System.out.println("课程2"); }else if(num==3){ System.out.println("课程3"); }else { System.out.println("输入错误,输入的数不在1~3之间"); } }catch (Exception e){ System.out.println("输出错误,发生异常"); }finally { System.out.println("欢迎提出建议"); } }
标签:System,errorCode,println,异常,public,out 来源: https://www.cnblogs.com/linlinmailbox/p/16491772.html