如何自定义异常类
在B站学习java写的代码
代码如下
MyException类
package com.day0203_2;
/*
* 如何自定义异常类
* 1.继承与现有的异常结构:RuntimeException、Exception
* 2.提供全局常量:serialVersionUID
* 3.提供重载的构造器
*
*
*
*
*/
public class MyException extends RuntimeException{
static final long serialVersionUID = -3387516993124229999L;
public MyException() {
}
public MyException(String msg) {
super(msg);
}
}
StudentTest类
package com.day0203_2;
/*
* 关于异常对象的产生: 1 系统自动生成的异常对象
* 2 手动的生成一个异常对象,并抛出(throw)
*/
public class StudentTest {
public static void main(String[] args) {
try {
Student s=new Student();
s.regist(-1001);
System.out.println(s);
} catch (Exception e) {
// e.printStackTrace();
System.out.println(e.getMessage());
}
}
}
class Student{
int id;
public void regist(int id) throws Exception {
if (id>0) {
this.id=id;
}else {
// System.out.println("您输入的数据非法!");
//手动的抛出异常对象
// throw new RuntimeException("您输入的数据非法!");
// throw new Exception("您输入的数据非法!");
throw new MyException("不能输入负数");
}
}
@Override
public String toString() {
return "Student [id=" + id + "]";
}
}