Java中接口和抽象类之间的区别是什么?

Java中接口和抽象类之间的区别是什么?,java,Java,可能重复: Java中接口和抽象类之间的区别是什么?为什么我要用一个而不是另一个呢?这是一个非常广泛的问题,它们之间有很多不同,不可能在这里讨论所有的问题,你可以用谷歌搜索得到好的答案,但是 广义地说,抽象类是一个部分实现的部分未实现的结构,接口是一个完全未实现的结构一个抽象类可以包含实现,但它是一个类,只能扩展一个类 一个接口只包含声明,没有实现,您可以实现任意多个接口 如果不需要实现任何方法,请使用接口 如果必须实现一个抽象类的方法,而是考虑它实现了一个接口。这将允许您在无法使用抽象类的情

可能重复:


Java中接口和抽象类之间的区别是什么?为什么我要用一个而不是另一个呢?

这是一个非常广泛的问题,它们之间有很多不同,不可能在这里讨论所有的问题,你可以用谷歌搜索得到好的答案,但是


广义地说,抽象类是一个部分实现的部分未实现的结构接口是一个完全未实现的结构

一个抽象类可以包含实现,但它是一个类,只能扩展一个类

一个接口只包含声明,没有实现,您可以实现任意多个接口

如果不需要实现任何方法,请使用接口


如果必须实现一个抽象类的方法,而是考虑它实现了一个接口。这将允许您在无法使用抽象类的情况下使用替代实现,例如,由于多重继承的不可能性。

以下是我对两年前编写的一些实际示例的解释-


希望它能帮助你更好地理解

Java不是首字母缩略词,也不是全大写的,所以不太清楚为什么要写“Java”。为什么人们在我问问题时给我不好的评价,并且对每个人都要礼貌?@darkuzul:你可以搜索这个论坛上已经问过的类似问题,而不是发布新问题。对不起,我是新的,我解释说这是我的第一篇帖子,但有人删除了我写的所有内容。我不明白为什么。谢谢你但是什么时候你会选择使用抽象类作为接口呢?我想给你点分数,但它说我必须有15分,我怎么给你?对不起,请等待对您的问题和答案进行几次投票,您将可以选择投票。这是一个很好的答案,我想我现在理解了一点,谢谢