如何自定义一个异常类

如何自己定义一个异常类来管理相应的异常?
 1) 为这个找一个近似的类作为父类。
 2) 在该类中编写两个构造器:
 a) 默认构造器;
 b) 带String message参数的构造器且在该构造器中使用 super(message); 语句
     来调用父类的构造器完成异常原因的更改。

以下实例为,创建一个小猫对象,其年龄为负数则显示为异常

public class Exception7 {
    public static void main(String[] args) {

        Cat c1=null;
        try{
        c1=new Cat("小喵",-2,true);
        }catch(IllegalAgeException e){
            System.out.println("输入的年龄非法!异常的原因是:"+e.getMessage());
        }
        System.out.println(c1);

    }

}
//定义一个异常类
class IllegalAgeException extends Exception{
    public IllegalAgeException(){

    }
     public IllegalAgeException(String Message){
        super(Message);

    }
}
//定义一个Cat类
class Cat{

    private String name;
    private int age;
    private boolean SEX;
    public Cat() {

    }
    public Cat(String name, int age, boolean sEX) throws IllegalAgeException {
        this.name = name;
        if(age<0){
            throw new IllegalAgeException("给定的年龄"+age+"是非法的!");
        }
        this.age = age;
        SEX = sEX;
    }
    public String toString(){
        return " "+name+" "+age+" "+(SEX?"公":"母");
    }

}
时间: 2024-08-24 05:47:36

如何自定义一个异常类的相关文章

自定义一个异常类模板代码实例

一:自定义异常类: package 自定义异常; //或者继承RuntimeException(运行时异常) public class MyException extends Exception { private static final long serialVersionUID = 1L; // 提供无参数的构造方法 public MyException() { } // 提供一个有参数的构造方法 public MyException(String message) { super(mes

怎样自定义一个异常(报错) 并抛出

1. 自定义一个异常需要使用构造函数 Error() var error1 = new Error("This is an unknown error."); 2. 抛出异常需要使用 throw 关键字 var error1 = new Error("This is an unknown error."); throw error1; 执行后就可以得到这样的效果: 原文地址:https://www.cnblogs.com/aisowe/p/11655006.html

c++primer,自定义一个复数类

1 #include<iostream> 2 #include<string> 3 #include<vector> 4 #include<algorithm> 5 #include<cstdio> 6 #include<complex> 7 using namespace std; 8 9 class Complex{ 10 //复数为直角坐标形式,a+bj 11 private: 12 double real; 13 double

PHP (Yii2) 自定义业务异常类(可支持返回任意自己想要的类型数据)

public function beforeAction($action) { return parent::beforeAction($action); } public function runAction($id, $params = []) { try { return parent::runAction($id, $params); } catch (MyException $myException) { //此处返回业务错误 比如返回json字符串错误 $result = [ 'st

第十一篇 自定义一个缓存类(甚用~)

1 //自定义缓存类 2 public class CacheHelper<T> where T:class 3 { 4 private class Entity 5 { 6 public T Value{get;set;} 7 public DateTime Expiretime { get; set; } 8 } 9 private static readonly Dictionary<string, Entity> Dic=new Dictionary<string,E

Python自定义一个数组类,支持数组之间的四则运算和其他常见方法

class MyArray: '''保证输入的内容是整型.浮点型''' def ___isNumber(self, num): if not isinstance(num, (int,float)): return False return True #开始写构造函数,接受可变长度的数组 def __init__(self, *args): if args == None: self.__value = [] else: for a in args: if not self.___isNumbe

自定义一个异常

class Myexception(Exception): def __init__(self,message): self.message=message def __str__(self): return self.message try: raise Myexception("我错了") except Myexception as e: print(e) 原文地址:https://www.cnblogs.com/yangzhen-ahujhc/p/12304557.html

Java异常类及处理

异常概述:运行时发生的不正常情况 在java中用类的形式对不正常的情况进行了描述和封装对象. 描述不正常的类,称之为异常类. 异常就是java通过面向对象的思想将问题封装成了对象,用异常类对其进行描述. 不同的问题用不同的类进行具体的描述,比如角标越界,空指针等. 异常体系两大类: 无论是error,还是Exception,问题发生就应该可以抛出,让调用者知道并处理,该体系的特点就在于Throwable及其所有子类都具备可抛性. Throwable: ① 一般不可处理的.Error 特点:是由J

类的继承与super()的意义以即如何写一个正确的异常类

这些东西都是我看了许多名师课程和自己研究的成果,严禁转载,这里指出了如何正确的自己定义一个异常类并看一看sun写的java的源代码话题一:子类的构造器执行是否一定会伴随着父类的构造执行? 1.this()与super()不能共存2.如果不显示地调用this()和super();子类对象的创建是否一定执行父类的构造3.既然super()和this()不能共存,又说子类的构造执行一定会执行父类的构造,那么我让子类的构造执行this()是不是就不能在执行父类的构造? 4.如果我非不让父类的构造执行,我