用户自定义异常类是通过继承