[Java、Android面试]_07_继承与多态、重写与重载

欢迎查看合集:
Java、Android面试高频系列文章合集

本人今年参加了很多面试,也有幸拿到了一些大厂的offer,整理了众多面试资料,后续还会分享众多面试资料。
整理成了面试系列,由于时间有限,每天整理一点,后续会陆续分享出来,感兴趣的朋友可关注+收藏

1. 继承

继承是一种面向对象编程的机制,允许一个类(子类/派生类)继承另一个类(父类/基类)的属性和方法。子类可以重用父类的代码,还可以通过添加新的属性和方法来扩展功能。继承建立了类之间的层次关系。
一方面为了共用父类中的成员,简化开发,可以直接拥有父类的成员
二方面为了扩展程序,继承的子类中除了父类的成员,还可以有自己的成员
继承一定要符合is-a的关系

哪些东西是子类所不能继承的
· 构造方法不能被继承
· 私有的成员可以不可以

从现实中来看,私有成员可以被继承的。能继承不代表可以直接访问父类的属性,也不代表不能间接的访问父类的属性

从代码来看,子类继承父类之后,父类中所有的属性子类都具有了
从现实中来看,私有的属性有些子类不能继承。

Oracle官方的说法是不能被继承。私有代表只能自己操作。其他人根本摸不到,但是可以间接的访问
· 静态的成员:在类中是可以被继承的。在接口中不能被继承。

2. 多态

多态是面向对象编程的一种特性,允许不同的子类对象以统一的方式进行访问和操作。多态通过方法的重写(覆盖)和方法的动态绑定来实现,使得不同子类对象可以对相同的方法调用表现出不同的行为。
如:人class, 可以有:man Class 和woman Class

3. 重写和重载

3.1 重写

· 子类继承了父类,子类拥有了和父类一样的属性和行为,但是,子类不满足于父类的
行为,需要重写
· 方法的重写一般是发生在继承中的。
· 方法签名不能变。返回值类型可以协变(子类的返回值类型只能是父类的返回值类型
的子类)
· 真正改变的只是方法体
· @Override:注解,检查这个方法是否符合重写的规则,如果符合,什么都不会显示,
一旦写错,它就有提示
· 访问修饰符没有要求,但是不能比父类的小。父类私有的方法,不能重写。
· 父类静态方法。子类只能继承,不能重写,如果存在方法签名与父类相同的静态方法,
实际是子类自己的

3.2 重载

重载是指在一个类中定义多个同名但参数列表不同的方法。重载允许同一个方法名实现不同的功能,方法参数的类型、个数或顺序必须不同。重载不涉及继承关系,只与方法的签名有关。

  • 5
    点赞
  • 9
    收藏
    觉得还不错? 一键收藏
  • 2
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 2
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值