[英]Closeable extends AutoCloseable
我最近浏览了jdk 1.8的src.zip文件,发现有些奇怪。
public interface Closeable extends AutoCloseable
而且由于AutoCloseable也是一个接口 ,因此java中的任何内容都不允许扩展它吗?
当我尝试使用任何其他接口时,我一直在收到错误消息:
Runnable类型不能为userDefine Class的超类 ; 超类必须是一个类。
那么,为什么会有这种差异呢? 还是我错过了什么? 如果是这样,请向我解释。
如果仅从自然语言的角度考虑它,则接口可以扩展其他接口,因为它们正在扩展它们对实现类的要求。 它们是更具体的合同。
如果接口要使用implements
关键字来表达这个想法,那将是令人困惑的。 “实施”的意思是“提供实施”,而事实并非如此。
因此:
接口
extends
接口。 不implements
。
在继承时,当一个类从一个类继承或一个接口从另一个接口继承时,都可以使用关键字extends
。
当涉及到接口时,关键字extends
可以看作是类的implements
。
这会将超级接口的功能添加到扩展对象
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.