回顾Java知识2(多态、抽象、接口、final)

一、多态
所谓多态就是一个引用在不同情况下的多种状态。如父类中声明的方法子类中都重写了,那如果声明一个对象
父类 对象名=new 子类();
则 对象名.A() 在运行时如果
(1)A()在父类子类中都有,则调用子类中的A();
(2)A()只有父类中有子类中没有,则调用父类中的A();
(3)A()只有子类有而父类没有,则编译出错(因为编译时对象类型是父类,而父类中没有这个方法,只有在运行时该对象类型才是子类);

多态跟继承、重写是息息相关的。

二、抽象类
1、父类中提供一些抽象方法,只声明而不用实现,具体实现让他的子类来做。就好比抽象类知道要做一件事,但具体怎么做他不知道或者他不管,而让继承他的子类(子孙)来具体实现(有抽象方法的类必须为抽象类abstract。)
2、同样的父类中的抽象方法在子类中必须要将其实现。
3、抽象类中也可以有方法是普通方法,不过同样的是抽象类中的所有方法都不能在抽象类中实现。
4、抽象类不能被实例化

三、接口
1、当一个类实现一个接口时,要将该接口中声明的方法全部实现(即重写接口中的类)
2、接口不能被实例化
3接口中所有方法都不能有主体
4、一个类可以实现多个接口,
类名 implement 接口1,借口{}
5、在这里插入图片描述
6、java中的类都是单继承的,为了弥补这一缺点而引入接口,即一个类可以同时继承一个类并实现好几个接口
子类1 extends 父类 implement 接口1,接口2{}
7、只要一个类A实现了接口B,则另一个类C若在声明方法时将接口B作为引用变量,则在主函数调用该方法时可以传入类A的实例
在这里插入图片描述
在这里插入图片描述
四、final
在这里插入图片描述
1、final 修饰的成员变量必须有程序员显式地指定初始值(赋初值)
2、final修饰的类表示该类不能被继承
在这里插入图片描述

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值