自定义异常
来源:互联网 发布:mac os x cdr下载 编辑:程序博客网 时间:2024/06/05 20:39
------- android培训、java培训、期待与您交流! ----------
package cn.object.exception;/** * @author tom 因为项目中会出现特有的问题,而这些问题并未被java所描述并封装对象。 * 所以对于这些特有的问题可以按照java对问题封装的思想。将特有的问题,进行自定义的异常封装 * * 自定义异常。 需求:在本程序中,对于除数是-1,也视为是错误的是无法进行运算的。 那么就需要对这个问题进行自定的描述. * * 当在函数内部出现了throw抛出异常对象,那么就必需要 给出对应的处理动作: 1:要不在内部try catch处理 * 2:要么在函数上声名,让调用者处理 一般情况在函数内出现异常,函数上需求声名 * * 如何自定义异常信息? * 因为父类中已经把异常信息的超做都完成了 * 所以之类只要在构造时,讲异常信息传递给父类通过super语句。那么就可以直接通过getMessage方法获取自定异常信息了 * * 自定义异常: * 必需是自定义类继承Exception。 * * 继承Exception原因: * 异常体系有一个特点:因为异常类和异常对象都需要被抛出。他们都具备可抛性,这个可抛性是Throwable这个体系独有特点 * 只有这个体系中的类和对象才可以被throws和throw操作 */public class ExceptionZiDingYi {public static void main(String[] args) {Demo2 d = new Demo2();try {int x = d.div(4, -5);System.out.println("x=" + x);} catch (FuShuException e) {System.out.println(e.toString());System.out.println("错误的负数是"+ e.getX());//调用返回这个错误数字方法 }System.out.println("over");}}class FuShuException extends Exception { //继承Exception是因为他是Throwable的子类其实也可以继承Error和Throwable (看下面注释代码)private String msg;//为了接受错误信息private int x;//为了接受错误的数字是几FuShuException(String msg,int x) {super(msg);this.x=x;}public int getX(){return x;}//返回错误的数字}class Demo2 {int div(int a, int b) throws FuShuException {if (b < 0)throw new FuShuException("除数不能为负数\n这个负数是",b/*抛出这个数字*/);// 手动通过throw关键字抛出一个自定义异常对象return a / b;}}/*class Throwable {private String message;Throwable(String message) {this.message = message;}public String getMessage() {return message;}}class Exception extends Throwable {Exception(String message) {super(message);}}*//*throws和throw的区别????????? *1:throws使用在函数上。throw使用在函数内 *2:throws后面跟的是异常类。可以跟多个,用都好隔开,throw后跟的是异常对象 *例子在上面 * */
0 0
- 自定义异常
- 自定义异常
- 自定义异常
- 自定义异常
- 自定义异常
- 自定义异常
- 自定义异常
- 自定义异常
- 自定义异常
- 自定义异常
- 自定义异常
- 自定义异常
- 自定义异常)
- 自定义异常
- 自定义异常
- 自定义异常
- 自定义异常
- 自定义异常
- Authentic Louis Vuitton Outlet mxfUm
- Louis Vuitton Outlet Bags npA1A
- CCNP路由实验之十六 策略路由(PBR)
- Discount Louis Vuitton Online 2Whyf
- Discount Louis Vuitton Outlet gBCkM
- 自定义异常
- Swift自动引用计数 - 解决内存泄露
- OCUnit and GHUnit
- 两种查找方式
- 面试题
- NYOJ 20 吝啬的国度
- int fun(){return 1;}在C和C++中不同
- dbutils框架的使用(一)
- 小工具之UUID和map 转换 JavaBean