Java学习日记二----重写

Java的重写

嗯,今天刚看到Java的重写,有点理解就赶紧记录下来,可能有些理解的不到位,还请多多指正。

说道Java的重写就得提到extends(继承),先举一个具体的例子吧,有两个类Person,Student,Student继承Person,先上代码吧

Person类

public class Person {
    public void test() {
        System.out.println("Person");
    }
}

Student类

public class Student extends Person{
    public void test() {
        System.out.println("Student");
    }
}

main方法

public class Day02Main {
    public static void main(String[] args) {
        Person p = new Student();
        Student s = new Student();
        p.test();
        s.test();
    }
}

重写就是在子类中把父类的方法重写,具体好比上图Person里有一个test方法,Student里也有一个test方法,这里就提一下main里写的第一行代码,父类实例化了子类,由于他俩是继承关系,所以有一个转换,这么写的话就会检测Student里有没有和Person里一样的方法,有的话就会重写父类Person的方法,所以这里最终输出结果是
最终输出结果
重写也是有一些注意事项的

1.方法名必须相同
2.参数列表必须相同,不相同你直接写test() idea就给你报错,再者说参数列表不同他也不会匹配上,就会变成重载
3.子类范围可以扩大但不能缩小,举个栗子,父类是default,子类可以是default也可以是public,但不能是private

由于我是个新手啊,我想的这个重写有哪些应用场景,我觉得其中一项就是,一个父类可以被好多个类继承,调用父类的方法希望可以根据继承的子类的不同从而进行不同的处理,这里就很适合重写了吧

对了,我是“我叫胡八一”,正努力从前端转型,对IT感兴趣可以加我QQ:1627889159

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

我叫胡八一

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值