博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
抽象类和接口的区别以及jdk1.8之后接口里面可以实现方法
阅读量:4482 次
发布时间:2019-06-08

本文共 586 字,大约阅读时间需要 1 分钟。

接口和抽象类的概念不一样。接口是对动作的抽象,抽象类是对根源的抽象。

当你关注一个事物的本质的时候,用抽象类;当你关注一个操作的时候,用接口。

第一点. 接口可以多继承,抽象类不行

第二点. 接口中,在jdk1.8之后可以用static和default去修饰方法并且实现,此时实现接口的子类可以调用default修饰的方法,接口名调用被static修饰的静态方法(default只能用于接口或者switch case上);而抽象类可以实现部分方法。
第四点. 接口中基本数据类型为static 而抽类象不是的。

如果A接口和B接口中有参数相同,方法名相同eat的抽象方法,C类去实现这两个接口,重写任意一个就行;

但如果A接口和B接口中有参数相同,方法名相同,方法体不同的被default修饰的方法,C类直接实现需要重写该方法,方法体里面

默认写法为:A.super.eat();调用其中任意一个接口中的方法,也可以改成B.super.eat();该写法只能是:C类实现的含有defaut修饰的方法的接口名.super.被default修饰的方法名();C类没有实现D接口,即使D接口中有defaut修饰的eat方法,也无法D.super.eat();

转载于:https://www.cnblogs.com/wenwenzuiniucha/p/11091187.html

你可能感兴趣的文章
BZOJ4071: [APIO2015]八邻旁之桥
查看>>
Redis的六种特性 场景
查看>>
mysql 添加[取消]timestamp的自动更新
查看>>
码农的半衰期只有15年?
查看>>
手工释放linux内存
查看>>
2014-5-30 总结
查看>>
【H3 BPM工作流程管理产品小故事】第四篇 子表创建
查看>>
洛谷P1148 拱猪计分
查看>>
MySQL服务器的安装和配置,MySQL Workbench 8.0.12安装,MySQL的基本使用
查看>>
扑克序列
查看>>
java笔记--适配器模式的运用
查看>>
C#与数据结构--图的遍历
查看>>
ispy 编译笔记
查看>>
bzoj1067——SCOI2007降雨量(线段树,细节题)
查看>>
day 1
查看>>
洛谷P1282 多米诺骨牌【线性dp】
查看>>
数据类型的提升(promotion)
查看>>
Thead是不能返回值的,但是作为更高级的Task当然要弥补一下这个功能。
查看>>
Python中的生成器与yield
查看>>
JQuery 的Bind()事件
查看>>