继承中的覆盖相关问题

1.成员函数在子父类中的特点

        子类与父类方法一模一样(返回值类型、函数名、参数列表)时,会运行子类的方法,这种现象叫做覆盖(重写)

2.重写(Override)与重载(Overload)的区别

         重写是在子类中,并且与父类方法一模一样。但是重载的方法与被重写的方法在同一个类中,重载方法之间参数列表不一样,且重载与返回值的类型无关。

3.重写的注意事项

  • 子类方法覆盖父类方法时,子类权限必须要大于等于父类的权限;
  • 当权限相同时,无论父类/子类其中哪一个用static修饰,都不能发生覆盖。静态只能覆盖静态,或被静态覆盖。(因为static的成员是依赖于类的)

4.什么时候使用覆盖

        当对一个类进行子类的扩展时,子类需要保留父类的功能声明,但是要定义该功能的特有内容时,就要使用覆盖操作完成。比如:父类为Animal,子类有Dog和Cat,父类中有吃的方法,Dog和Cat都extends了Animal,所以都有吃的方法,但是吃的不一样,就可以用覆盖来完成。

5.子类构造方法的首行会隐式调用父类空参的构造方法。即:super();    如果父类中没有空参数的构造方法,就要在子类的构造方法的首行显式调用父类中的某一个构造函数。(因为父类的初始化过程要先完成)    *super(); this();语句都只能在构造方法的首行调用。任何一个类的构造方法的首行都有super();因为Java中Object类是所有类的爸爸。

【PS:可见,所有类的MM被             的有多惨.......

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值