java 使用 instanceof 关键字,捕获自定义异常
2014-01-06 16:48
405 查看
instanceof是Java的一个二元操作符,和==,>,<是同一类东东。由于它是由字母组成的,所以也是Java的保留关键字。它的作用是测试它左边的对象是否是它
右边的类的实例,返回boolean类型的数据。
instanceof 例子地址:http://rodney.cnblogs.com/archive/2005/08/18/instanceof.html
instanceof 捕获自定义异常:
/**
* 业务级异常
*/
public class BusinessException extends Exception{
private String errMsg;
private int errCode;
public String getErrMsg() {
return errMsg;
}
public void setErrMsg(String errMsg) {
this.errMsg = errMsg;
}
public int getErrCode() {
return errCode;
}
public void setErrCode(int errCode) {
this.errCode = errCode;
}
public BusinessException() {}
public BusinessException(String errMsg) {
this.errMsg = errMsg;
this.errCode = ErrCode.USER_OP_ERROR;
}
public BusinessException(String errMsg, int errCode) {
this.errMsg = errMsg;
this.errCode = errCode;
}
}
//异常代码类
public class ErrCode {
public static final int USER_OP_ERROR = 1001;
public static final int DB_ERROR = 8001;
}
//测试类
import org.junit.Test;
public class Test {
public void test1() {
throw new BusinessException("我是自定义异常!");
}
@Test
public void test2() {
try {
this.test1();
}catch (Exception e) {
if(e instanceof BusinessException){
System.out.println(e.getMessage());
}else{
System.out.println("我不是自定义异常!");
}
}
}
}
右边的类的实例,返回boolean类型的数据。
instanceof 例子地址:http://rodney.cnblogs.com/archive/2005/08/18/instanceof.html
instanceof 捕获自定义异常:
/**
* 业务级异常
*/
public class BusinessException extends Exception{
private String errMsg;
private int errCode;
public String getErrMsg() {
return errMsg;
}
public void setErrMsg(String errMsg) {
this.errMsg = errMsg;
}
public int getErrCode() {
return errCode;
}
public void setErrCode(int errCode) {
this.errCode = errCode;
}
public BusinessException() {}
public BusinessException(String errMsg) {
this.errMsg = errMsg;
this.errCode = ErrCode.USER_OP_ERROR;
}
public BusinessException(String errMsg, int errCode) {
this.errMsg = errMsg;
this.errCode = errCode;
}
}
//异常代码类
public class ErrCode {
public static final int USER_OP_ERROR = 1001;
public static final int DB_ERROR = 8001;
}
//测试类
import org.junit.Test;
public class Test {
public void test1() {
throw new BusinessException("我是自定义异常!");
}
@Test
public void test2() {
try {
this.test1();
}catch (Exception e) {
if(e instanceof BusinessException){
System.out.println(e.getMessage());
}else{
System.out.println("我不是自定义异常!");
}
}
}
}
相关文章推荐
- java基础16 捕获、抛出以、自定义异常和 finally 块(以及关键字:throw 、throws)
- Java中自定义异常的使用
- JAVA反射捕获自定义的异常
- Java异常----自定义异常类(throw和throws关键字的用法)
- Java - Java语言如何进行异常处理,关键字:throws、throw、try、catch、finally分别如何使用?
- Java 实现自定义异常 以及如何使用该异常
- Java语言如何进行异常处理,关键字:throws、throw、try、catch、finally分别如何使用?
- java自定义异常以及异常的使用
- Java语言如何进行异常处理,关键字分别如何使用
- Android 使用自定义UncaughtExceptionHandler捕获异常
- JAVA笔记9__异常/throw关键字/自定义异常/受检与非受检异常、assert关键字/StringBuffer、StringBuilder/代码国际化、动态文本
- .“在JAVA中,异常子类必须在它们任何父类之前使用,因为运用父类的catch语句将捕获该类型及其所有子类类型的异常。这样,后面运行子类的catch语句将永远不会到达。而且,Java中不能到达的代码是一个错误。”
- Java举例说明 里氏代换原则[能使用父类型的地方一定能使用子类型]之继承异常捕获顺序
- Android中使用ClassLoader修改自定义异常类继承来使异常捕获失效来坑害你的同事
- 牛客网Java刷题知识点之什么是异常、异常处理的原理是什么、为什么要使用异常、异常体系、运行时异常、普通异常、自定义异常、异常链
- JAVA如何使用自定义异常
- Java异常处理、异常处理使用的一些注意点(例如,基类和子类捕获的顺序问题)
- Java学习之异常:使用自定义异常
- C#使用OleDb连接Excel数据源编写查询语句捕获到“无法识别的关键字when”的异常
- Java中自定义异常的使用