美文网首页
异常在父类覆盖中的体现

异常在父类覆盖中的体现

作者: 东风谷123Liter | 来源:发表于2018-07-08 10:51 被阅读0次
  • 子类在覆盖父类,如果父类的方法抛出异常,那么子类的覆盖方法只能抛出父类异常或该异常的子类。
  • 原因:。。。。。
  • 如果在函数内部真的出现了与父类的异常无关的异常,那只能就地解决,千万不能抛;抛了之后,编译都不通过!
  • 如果父类或者接口的方法中没有异常抛出,那么子类也一定不能有异常抛出!
  • 练习:
   /*
有一个长方形。
都可以获取面积。对于面积如果出现非法的数值,视为是获取面积出现了问题。
问题通过异常表示。
现有对这个程序进行基本设计。
*/
interface Shape{
    void getArea();
}
class NoValueException extends Exception{
    NoValueException(String message){
        super(message);
    }
}
class Rec implements Shape{
    private int len, wid;

    Rec(int len, int wid) throws NoValueException{
        //以往我们为了不让用户不输入负数,通常会在这加一个if,else,该方法非常不可取
        //这个导致,程序执行代码和问题处理代码结合太紧密,可读性太差!!!
        //正确处理:用异常处理。
        if(len <= 0 || wid <= 0)
            throw new NoValueException("出现非法值");
        this.len = len;
        this.wid = wid;
    }
    public void getArea(){
        System.out.println(len*wid);
    }
}
class ExceptionTest1{
    public static void main(String[] args){
        
        try{
            Rec r1 = new Rec(1,0);
            r1.getArea();    //上面语句出现异常,下面的语句就不会在执行,程序会处理该异常,然后结束。
        }
        catch(NoValueException e){
            System.out.println(e.toString());
            System.out.println("请重新输入");
        }
    }
}

相关文章

  • day10-03-面向对象(异常-覆盖时的异常特点)

    异常在子父类覆盖中的体现 1.子类在覆盖父类时,如果父类的方法抛出异常,那么子类的覆盖方法,只能抛出父类的异常或该...

  • 异常在父类覆盖中的体现

    子类在覆盖父类,如果父类的方法抛出异常,那么子类的覆盖方法只能抛出父类异常或该异常的子类。 原因:。。。。。 如果...

  • 异常在子父类覆盖中的体现

    1.子类在覆盖父类时,如果父类的方法抛出异常。那么子类的覆盖方法只能抛出父类的异常或者该异常的子类。 2.如果父类...

  • 异常在子父类覆盖中的处理

    异常在子父类覆盖中的处理:1,子类在覆盖父类时,如果父类的方法抛出异常,那么子类的覆盖方法,只能抛出父类的异常。2...

  • mvp框架下出现界面中的textview不能赋值

    原因是子类中覆盖了父类的方法,一般在父类中已经实现的父类方法,子类中尽量不再进行覆盖

  • 重写(=覆盖)、重载

    override(重写、覆盖): 子类在继承父类时,重写(重新实现)父类中的方法。 重写(覆盖)的规则: 重写方法...

  • 继承

    super() 用于调用父类的构造方法 this() 用于调用本类中的构造方法 覆盖 覆盖父类的方法 应保持与...

  • 2018-07-10

    JAVA重写的条件 条件: 子类继承父类,并重写父类的方法 1、 重写要求子类中的覆盖方法与父类中被覆盖的方法有...

  • Java 异常

    捕获异常 注:对于几个有继承关系的异常要捕获,则子类异常放前面,父类异常放后面,以免父类异常把子类的覆盖后,子类异...

  • Java自学-接口与继承 隐藏

    Java中的方法隐藏 与重写类似,方法的重写是子类覆盖父类的对象方法 隐藏,就是子类覆盖父类的类方法 步骤 1 :...

网友评论

      本文标题:异常在父类覆盖中的体现

      本文链接:https://www.haomeiwen.com/subject/iuxouftx.html