异常处理
包接口继承结构:
所有的RuntimeException 类其子类 都是运行时异常,其他的异常都是编译时异常;
运行时异常:无需显示处理(写程序时候不会提示有问题,执行才出问题),也可以和编译时异常一样处理;
编译时异常:必须显示处理(写程序时就提示问题,必须先处理不然不能运行),否则程序就发生错误,无法通过编译;
1.3 异常处理
如果程序出现了问题,我们需要自己来处理,有两种方案:
方案一:try ····catch ···· //用try{ }catch{ } 如果出现异常 会生成一个异常的对象 就会执行catch { } 可以用生成的对象调方法【[对象.printStackTrace()】 或者运行其他程序 自己写程 序继续执行,如果不用 try ····catch ···· 处理则程序 不能往下执行
常用: .printStackTrace() 方法 // 意思是显示异常名称,位置
方案二:throws
throws 处理异常,只是抛出异常,实际并未处理,程序依然不能执行,最终还是需要调用者通过try ···· catch··· 方法处理
--------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
总结:
自定义异常:
用途,自己定义异常,告诉开发者调用或执行某个方法 有异常。
关键点:
1.创建异常类继承Exception接口,带参构造方法上传异常提示内容。
2.判断出现异常 创建异常类对象,并抛出;
自定义异常类,要继承 Exception 接口;
案例:
创建异常处理类:
创建主程序及方法:
结果:
输入77777 由于大于100 则出现异常提示。 输入正常数值 输出分数正常