package com.atguigu.java2;
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{
private 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 + "]";
}
}
package com.atguigu.java2;
/*
* 如何自定义异常类?
* 1.继承于现有的异常结构:RuntimeException、Exception
* 2.提供全局常量:serialVersionUID
* 3.提供重载的构造器
*
*/
public class MyException extends RuntimeException{
static final long serialVersionUID = -7034897193246939L;
public MyException() {
}
public MyException(String msg) {
super(msg);
}
}