面向对象编程 多态、抽象类、接口

1 多态是面向对象三大特征之一,是指同一个对象,在不同时刻表现出来的不同形态
父类引用指向子类对象。
多态中成员访问:编译看左边,执行看右边。
访问成员变量和成员方法不同是因为成员方法有重写,而成员变量没有。
2 多态提高了程序的扩展性
定义方法的时候,使用父类型作为参数,将来在使用的时候,使用具体的子类型参与操作。
3 向上转型:父类引用指向子类对象
向下转型:父类引用转为子对象(可以解决父类对象无法访问子类中特有的方法的问题)
//向上转型
Animal a = new Cat();
//向下转型
Cat c = (Cat)a;
4 抽象类:没有方法体的方法定义为抽象类,使用abstract关键字定义抽象类
类中如果有抽象方法,该类必须定义为抽象类
5 接口
(1)接口使用关键字interface
public interface 接口名{}
(2)类实现接口使用implements
public class 类名 implements 接口名{}
(3)接口不能直接实例化
可以通过实现类对象实例化
(4)多态的形式分为:类多态,抽象类多态,接口多态
多态的前提:有继承或实现关系、有方法重写、有父(类/接口)引用指向(子/实现)对象
(5)接口的实现类:要么是抽象类,要么必须重写接口中的所有抽象方法
(6)
类和类:只能单继承,可以多层继承
类和接口:可以单实现,也可以多实现,还可以在继承一个类的同时实现多个接口
接口和接口:可以单继承,也可以多继承
6 抽象类和接口区别
设计理念区别:
抽象类:对事物(类)的抽象,包括属性、行为
接口:对行为抽象
成员区别:
抽象类:变量、常量、抽象方法、非抽象方法
接口:常量、抽象方法
7 抽象类名和接口名作为形参和返回值
方法的形参是抽象类名,其实需要的是该抽象类的子类对象
方法的返回值是抽象类名,其实返回的是该抽象类的子类对象

接口同理
方法的形参是接口名,其实需要的是该接口的实现类对象
方法的返回值是接口名,其实返回的是该接口的实现类对象
 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

打赏作者

海阔天空2021

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

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

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

打赏作者

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

抵扣说明:

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

余额充值