`

Java异常类

阅读更多

ApplicationException

/**
 * Wallstreet异常
 * 
 * @author liuxl
 *
 */
public class ApplicationException extends RuntimeException {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	/**
	 * 错误代码
	 */
	private String code;

	public ApplicationException() {
		super();
	}

	public ApplicationException(String msg) {
		super(msg);
	}

	public ApplicationException(Throwable th) {
		super(th);
	}

	public ApplicationException(String msg, Throwable th) {
		super(msg, th);
	}

	public ApplicationException(String code, String msg) {
		super(msg);
		this.code = code;
	}

	public ApplicationException(String code, String msg, Throwable th) {
		super(msg, th);
		this.code = code;
	}

	public String getCode() {
		return code;
	}

	public void setCode(String code) {
		this.code = code;
	}
}

 

InvalidParamException

/**
 * 输入参数校验异常
 * 
 * @author liuxl
 *
 */
public class InvalidParamException extends ApplicationException {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	// 错误参数名称
	private String paramName;
	
	public InvalidParamException(String paramName) {
		super("Invalid param: " + paramName);
		this.setParamName(paramName);
	}

	public InvalidParamException(String msg, Throwable th) {
		super(msg, th);
	}

	public InvalidParamException(String code, String msg) {
		super(code, msg);
	}

	public String getParamName() {
		return paramName;
	}

	public void setParamName(String paramName) {
		this.paramName = paramName;
	}
	
}

 

EmptyResultException

/**
 * 没有查询到记录的异常
 * 
 * @author liuxl
 *
 */
public class EmptyResultException extends ApplicationException {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;

	public EmptyResultException(String msg) {
		super(msg);
	}

	public EmptyResultException(Throwable th) {
		super(th);
	}

	public EmptyResultException(String msg, Throwable th) {
		super(msg, th);
	}

	public EmptyResultException(String code, String msg) {
		super(code, msg);
	}

	public EmptyResultException(String code, String msg, Throwable th) {
		super(code, msg, th);
	}
	
}

 

Exceptions

import java.io.PrintWriter;
import java.io.StringWriter;

/**
 * 关于异常的工具类.
 * 
 * @author admin
 */
public class Exceptions {

    /**
     * 将CheckedException转换为UncheckedException.
     */
    public static RuntimeException unchecked(Exception e) {
        if (e instanceof RuntimeException) {
            return (RuntimeException) e;
        } else {
            return new RuntimeException(e);
        }
    }

    /**
     * 将ErrorStack转化为String.
     */
    public static String getStackTraceAsString(Exception e) {
        StringWriter stringWriter = new StringWriter();
        e.printStackTrace(new PrintWriter(stringWriter));
        return stringWriter.toString();
    }

    /**
     * 判断异常是否由某些底层的异常引起.
     */
    public static boolean isCausedBy(Exception ex, Class<? extends Exception>... causeExceptionClasses) {
        Throwable cause = ex.getCause();
        while (cause != null) {
            for (Class<? extends Exception> causeClass : causeExceptionClasses) {
                if (causeClass.isInstance(cause)) {
                    return true;
                }
            }
            cause = cause.getCause();
        }
        return false;
    }
}

 

分享到:
评论

相关推荐

    java异常分类

    有时候为了更精确地描述错误情况,可以自定义异常类来扩展现有的异常类型。 #### 四、小结 理解并正确处理Java中的异常对于编写健壮、可靠的应用程序至关重要。通过了解各种异常的特性和如何有效地捕获和处理异常...

    java异常机制小结

    Java 异常类的层次图包括 Throwable、Error、Exception、RuntimeException 等几个类。Throwable 是 Java 语言中所有错误或异常的超类。Error 和 Exception 是 Throwable 的两个子类,表示严重错误和非严重错误。...

    java 异常详解,java异常分类,创建自己的异常

    Exception 类是可以被捕捉并且可能恢复的异常类,可以继承 Exception 类生成自己的异常类。Error 类一般被认为是不可恢复和不可捕捉的异常类。 Java 异常处理可以分为以下几个步骤: 1. 抛出异常:在 Java 中,...

    java异常分类.pdf

    在Java中,所有的异常都是通过Java异常类体系来处理的。根据异常在Java中的定义,它们大致可以分为两大类:错误(Error)和异常(Exception)。这两类进一步细分为不同的子类,其中异常类又分为受检异常(checked ...

    java异常类

    对学生类异常处理

    java异常类:java异常

    Java异常处理是编程中至关重要的一个环节,它确保了程序的稳定性和健壮性。Java异常是程序在运行过程中遇到的错误,它们可以是编译时错误,也可以是运行时错误。Java通过一套完整的异常处理机制来管理和修复这些错误...

    java异常类基础入门.docx

    java异常类基础入门.docx

    java 异常类处理

    本文将深入探讨Java中的异常类处理,包括异常的分类、处理机制以及如何有效地利用源码和工具进行调试。 首先,Java中的异常分为检查型异常(Checked Exceptions)和运行时异常(Runtime Exceptions)。检查型异常是...

    Java异常类的处理.ppt

    Java异常类的处理.ppt

    Java常见工具类及异常处理

    Java 异常类的层次结构是一个树形结构,其中 Throwable 是所有异常类的根类。它有两个子类:Exception 和 Error。Exception 是用户程序应当捕获的异常情况,而 Error 是内部错误,因此在正常情况下不期望用户的程序...

    Java创建用户异常类

    从java异常类的结构层次可以看出,java类型的公共父类为Throwable.在程序运行中可能出现俩种问题:一种是由硬件系统或JVM导致的故障,java定义该故障为Error,这类问题是用户程序不能够处理的;另外一种问题是程序...

    Java自定义异常类_1.txt

    1. **`Throwable`**:所有Java异常类的父类。 - **`Exception`**:表示程序可以捕获并处理的异常情况。 - **`Error`**:表示程序无法恢复的严重问题,通常不建议程序员捕获或处理这类异常。 2. **`Exception`**:...

    Java异常处理体系

    Java异常类层次结构基于`java.lang.Throwable`,它是所有异常和错误的基类。Throwable有两个主要子类:`Exception` 和 `Error`。Exception 用于程序中常见的可恢复错误,而 Error 通常是不可恢复的严重问题,比如...

    Java异常处理总结

    #### 三、Java异常类类图 Java异常体系结构如下所示: - **Object** - **Throwable** - **Exception** - **RuntimeException** - **ArithmeticException** - **NullPointerException** - **...

    java课件 常用类与异常处理

    Java提供了多种内置的异常类,如`IOException`, `NullPointerException`, `ArrayIndexOutOfBoundsException`等,开发者也可以自定义异常类。 正则表达式在Java中通过`java.util.regex`包提供,用于文本模式匹配和...

    Java异常处理策略研究.pdf

    本文研究了 Java 异常处理策略,着重于分析 Java 异常处理的逻辑、阐述了异常类、异常处理机制 serta 异常处理方法,并提出了异常处理的一些策略。合理完备的异常处理可以增强程序运行的可靠性、提高软件的健壮性,...

    java 文件名大小限制异常类java 文件名大小限制异常类java 文件名大小限制异常类

    java 文件名大小限制异常类java 文件名大小限制异常类java 文件名大小限制异常类java 文件名大小限制异常类java 文件名大小限制异常类java 文件名大小限制异常类java 文件名大小限制异常类java 文件名大小限制异常类...

Global site tag (gtag.js) - Google Analytics