第一步: 定义一个Exception父类
public class BaseException extends Exception
{
private static final long serialVersionUID = 1L;
//异常类别 根据返回的不同数字信息得到不同的异常信息
protected int exceptionKey;
//异常信息
protected String message;
protected Object object;
public Object getObject()
{
return object;
}
public void setObject(Object object)
{
this.object = object;
}
public String getMessage()
{
return message;
}
public void setMessage(String message)
{
this.message = message;
}
public int getExceptionKey()
{
return this.exceptionKey;
}
public BaseException()
{
}
public BaseException(int exceptionKey)
{
this.exceptionKey = exceptionKey;
}
public BaseException(String message)
{
this.message = message;
}
}
第二步:然后自定义自己的异常类,继承上面的Exception父类
public class LadingsException extends BaseException
{
static final long serialVersionUID = 1001;
final public static int UserDefined = 10000; //用户自定义错误
/** LadingsException */
final public static int OutQuantity = 1; //超出数量
final public static int OutWeight = 2; //超出重量
final public static int OutArea = 3; //超出面积
final public static int OutVolume = 4;//超出体积
public LadingsException(int exceptionKey)
{
super(exceptionKey);
}
public LadingsException(String message)
{
super(message);
this.exceptionKey = UserDefined;
}
public String toString()
{
return exceptionKeyToMessage();
}
public String exceptionKeyToMessage()
{
if (exceptionKey == UserDefined)
{
return message;
}
if (exceptionKey == OutQuantity)
{
return "待分配数量不足";
}
if (exceptionKey == OutArea)
{
return "待分配面积不足";
}
if (exceptionKey == OutVolume)
{
return "待分配体积不足";
}
if (exceptionKey == OutWeight)
{
return "待分配重量不足";
}
return "系统内部错误";
}
public String getMessage()
{
return exceptionKeyToMessage();
}
}
第三步使用自定义异常,在方法A通过throws LadingsException,抛到上一级中
public void A ()throws LadingsException{
//调用方法B
B();
}
第四步在方法B中使用 throw new LadingsException(参数),抛到A中
public void B ()throws LadingsException{
//判断异常是属于哪一种,然后通过LadingsException异常类的
//构造函数,来产生异常信息
//比如下面的就是产生 “待分配数量不足” 的异常信息
throw new LaidngsException(LadingsException.OutQuantity);
}
第五步从B抛到上一级A,然后在从A抛到A的上一级C中,然后在C中通过
try{
A();
}catch(LaidngsException e){
//通过e.getMessage()来获取异常信息
}
第六步在方法C中获取到异常信息,可以通过比如Json的方式发送到前台,提示用户,该操作不能使用的原因
分享到:
相关推荐
Exception JAVA 自定义异常 Exception JAVA 自定义异常 Exception
自定义异常Exception,对于产品开发等比较有用
Oracle Exception汇总(自定义Oracle异常) 使用方法举例: Exception When no_data_found then Dbms_output.put_line(‘no_data_found’); ACCESS_INTO_NULL 为对象赋值前必需初始化对象。对应ORA-06530错误。 CASE...
安卓APP自定义异常处理器,Release状态下意外奔溃提示更加友好(代替系统默认的那个讨厌的对话框),不影响Debug模式下LogCat的打印。 ************************************************************************ ...
本实例是一个关于python自定义异常的实例,供大家学习和交流
自定义的崩溃异常,可以保存错误信息至本地以及发送至服务端
*555555555*)(3)实现至少一处自定义 Exception(4)进行 Exception 控制 public class Triangle { public static void main(String[] args) { try { int height = Integer.parseInt(args[0]); // 从命令行参数读取...
10.2 抛出异常与自定义Exception类 196 10.2.1 使用throw关键字 196 10.2.2 在方法抛出异常 197 10.2.3 自定义Exception类 199 10.3 线程的基础知识 200 10.4 创建Java的线程 201 10.4.1 实现Runnable...
SpringBoot Jpa 结合Spring事物Aop,单元测试Junit,Restful Api风格的 小样例,自定义Exception捕获异常等
target=_blank>谈自定义Exception进行错误处理</A> <LI><A title="When catching exceptions, don't cast your net too wide" href=...
解决dubbo接口自定义异常的捕捉问题,dubbo消费者可以捕捉到提供者所抛出的自定义异常。
1.实现get,post请求 2.支持上传,下载功能 3.支持Gson泛型解析json数据 4.使用mvc设计模式 5.支持自定义exception 6.支持自定义controller 7.封装glide图片库使用
创建自定义异常 Create Custom Exception3---马克-to-win java视频
创建自定义异常 Create Custom Exception1---马克-to-win java视频
Java自定义异常处理详细介绍,包括了很多比较经典的案例,可以自己研究自定义异常
自定义 Exception 全局 ExceptionHandler 缓存 Redis 单元测试框架 JUnit 认证 JWT API 规范 RESTful API 规范 完善 Mybatis 逆向工程 Shiro 动态权限控制 RBAC(Role-Based Access Control )基于角色的访问控制 ...
技能介绍:1、rest架构2、逻辑控制 spring4 mvc3、自定义Exception类型,并返回客户端友好的错误信息4、用户认证与权限管理暂使用Spring Security,后面准备换成Apache Shiro5、数据存储使用MongoDB6、数据通信使用...
虽然内建异常类中已经包括了许多的错误情况,但是在项目的开发过程中还是要根据实际情况,创建具有自己特色的异常处理类,需要让自定义异常类继承“Exception”类或其他内建异常类即可。 语法格式: class ex1...
自定义异常类MyException,该类继承自Exception类,类中只有含一个字符串参数msg的构造方法,构造方法中只有一条语句super(msg)——调用父类的构造方法。另外,编写自定义类person,类中只有两个私有的变量,一个是...
java自定义弹窗Demo,主要代码: thisDialog = this; this.setTitle("提示"); this.setSize(300, 150); this.setModal(true); this.setLocationRelativeTo(c); actionL = new ActionListener...