JavaSE基础(20)方法重写(override),方法重载(overload)

方法重写

重写:

        关键字:override

        概念:继承关系中,子类将父类已有的方法重新实现,叫做方法的重写。

public class Animal {
    
    String name;
    int age;

    public void eat(){
        System.out.println("动物吃东西.....");
    }
}

public class Fish extends Animal {

    String color;

    @Override
    public void eat() {
        System.out.println("鱼游海底。。。。吃东西。。。");
    }
}

    Animal a = new Animal();
    a.eat();//父类对象,访问父类方法
    
    Fish fish = new Fish();
    fish.eat();//子类对象,访问子类重写后的方法。。。

规则:

        A:继承关系中。

        B:子类重写的方法的声明,必须和父类一致。

方法的返回值(注意点:子类重写的方法的返回类型可以是父类方法返回类型的子类),参数列表,方法名。

        C:子类重写方法的访问权限,不能比父类更加严格。

        D:重写的方法,不能抛出比父类更大的异常。

方法重载:overload

概念:一个方法,因为参数不同,执行的具体的方法也不同。

规则:

        A:同一个类中。

        B:方法名必须一致。

        C:参数列表必须不同:顺序,个数,类型。

比较点

重写

重载

单词

Overriding

Overloading

范围

继承(子类)

同一个类里

对方法的要求

和父类的方法名一致,参数列表一致,返回类型一致

方法名一致,参数列表不同,返回值类型无要求

对访问权限的要求

不能比父类的访问权限更加严格

对访问权限没要求

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值