继续浏览精彩内容
慕课网APP
程序员的梦工厂
打开
继续
感谢您的支持,我会继续努力的
赞赏金额会直接到老师账户
将二维码发送给自己后长按识别
微信支付
支付宝支付

Java中抽象类和接口的具体区别 都分别什么时候用

holdtom
关注TA
已关注
手记 1842
粉丝 240
获赞 991


学习Java已经一个月的时间了,期间经历了从入门到放弃再到重拾信心重新奋斗。今天的学习总结是关于Java中抽象类和接口的区别总结。

Java技术总结:Java中抽象类和接口的具体区别 都分别什么时候用

一、Java抽象类

1.抽象类必须用 abstract修饰

2.如果一个类有abstract方法,这个类一定是抽象类

3.抽象类不一定有抽象方法

4.抽象类可以有自己的变量

5.如果一个类,如果继承一个抽象类,如果没有实现所有的抽象方法,那它也要为抽象类

抽象类特性:

抽象类是用来捕捉子类的通用特性的 。它不能被实例化,只能被用作子类的超类。抽象类是被用来创建继承层级里子类的模板。

二、java接口

1.接口的定义为的关键字为interface

2.接口中只能有方法和变量,变量为public static final类型,方法只能被可以为public(默认)和protected修饰,方法不能有具体的实现

3.一个类可以实现多个接口

4.一个类实现接口,必须要实现接口的所有的方法

Java接口特性:

接口是抽象方法的集合。如果一个类实现了某个接口,那么它就继承了这个接口的抽象方法。这就像契约模式,如果实现了这个接口,那么就必须确保使用这些方法。接口只是一种形式,接口自身不能做任何事情。

三、Java抽象类和接口有什么区别:

Java技术总结:Java中抽象类和接口的具体区别 都分别什么时候用

四、我们该什么时候使用抽象类和接口?

在java开发中90%使用的都是接口,抽象类往往只是实现一个过渡。抽象类定义的抽象方法与接口定义的方法有点不同,抽象类定义的方法父类不要求子类强制覆写,接口定义的方法,其实现子类必须覆写。

具体情况具体分析,举例如下:

如果你拥有一些方法并且想让它们中的一些有默认实现,那么使用抽象类吧。

如果你想实现多重继承,那么你必须使用接口。由于Java不支持多继承,子类不能够继承多个类,但可以实现多个接口。因此你就可以使用接口来解决它。

如果基本功能在不断改变,那么就需要使用抽象类。如果不断改变基本功能并且使用接口,那么就需要改变所有实现了该接口的类。

©著作权归作者所有:来自51CTO博客作者QFdongdong的原创作品,如需转载,请注明出处,否则将追究法律责任


打开App,阅读手记
0人推荐
发表评论
随时随地看视频慕课网APP