java基础抽象类/接口/


抽象类(掌握)
(1)抽象:把多个类中的共性的内容进行抽取,抽取后就能形成一个继承体系。
但是,在今天的案例中,方法的声明相同,方法体不同,这样的抽取后,
在父类中定义的时候,是不能写方法体的,这样的方法要想被java识别,
就必须被标记为抽象的。如果一个类有抽象方法,那么该类肯定是抽象类。
反之,抽象类中不一定有抽象方法。(了解)
(2)好处:(掌握)
A:抽象类中可以有成员变量和非抽象方法,也可以实现代码的复用。
B:抽象类强制要求继承他的子类必须完成某些功能。
(3)成员特点:(掌握)
A:构造方法
抽象类有构造方法,但是本身不能被实例化。
它的构造方法用于子类实例化使用。
B:成员变量
抽象类既可以有成员变量,也可以有成员常量。
C:成员方法
抽象类既可以抽象方法,也可以有非抽象方法。
(4)使用:(掌握)
当一个类继承一个抽象类的时候
要么重写抽象类的所有抽象方法。
要么本身是一个抽象类。
(5)抽象类的注意事项(理解)
A:抽象类没有构造方法,那么有什么用?
有,用于子类实例化使用。
B:是否有非抽象方法?如果没有抽象方法类为什么要定义为抽象类?
有,提高代码复用性。
没有抽象方法的抽象类就是为了不让他能创建对象。
C:abstract不能和哪些关键字并存。
a:private
b:final
c:static
2:接口(掌握)
(1)接口:当一个抽象类中的方法都是抽象的时候,(并且都是成员常量的时候的。)
java提供了一个新的表示形式,那就是接口。(了解)
(2)好处:(理解)
A:接口是对外暴露的规则(USB,电脑内部的插槽,CPU的针孔)
B:接口是功能的扩展
C:接口降低了程序的耦合性
低耦合:类与类之间的关系
高内聚:类本身的能力
面向对象编程
面向接口编程
面向切面编程(Spring AOP)
(3)成员特点:
A:成员变量
成员变量都是常量,因为有默认修饰符:public static final
B:成员方法
成员方法都是抽象的,因为有默认修饰符:public abstract
建议,每次自己写接口的时候,尽量把修饰符自己写上。
(4)类,接口相互间的关系
A:类与类
继承关系,java只支持类的单继承,但是可以多重(层)继承。
B:类与接口
实现关系,可以单实现,也可以多实现。
还可以在继承一个类的同时,实现多个接口。
C:接口与接口
继承关系,可以单继承,也可以多继承。
如果一个类实现一个接口,就必须实现该接口及其父接口的所有抽象方法。
3:抽象类和接口的区别?
(A)成员区别:
抽象类:
构造方法
成员变量:可以是变量,也可以是常量。
成员方法:可以是抽象方法,也可以是非抽象方法。
接口:
成员变量:只能是常量。默认修饰符:public static final
成员方法:只能是抽象方法。默认修饰符:public abstract
(2)类只能单继承
而接口可以多继承。接口的出现避免了java的单继承的局限性。
(3)抽象类被继承,类中定义的是继承体系的共性内容。
接口被实现,接口中定义的是体系的扩展内容。
(4)设计理解不同:
抽象类被继承,体现的是一种:"is a" 的关系
接口被实现,体现的是一种:"like a" 的关系
问题:(作业,分析并把代码看一遍)
乒乓球运动员,乒乓球教练。
篮球运动员,篮球教练。
为了出国访问,乒乓球成员需要学习外语。
请画出继承体系结构图。用类,抽象类,接口体现。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 、4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、下载 4使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合;、 4下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.m或d论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 、1资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后会第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值