【发布时间】:2019-11-20 17:24:23
【问题描述】:
一个接口可以有多少个具体方法(JDK 7 及以下) JDK 7 及以下。我试图到处研究,但找不到任何东西。
【问题讨论】:
标签: java
一个接口可以有多少个具体方法(JDK 7 及以下) JDK 7 及以下。我试图到处研究,但找不到任何东西。
【问题讨论】:
标签: java
接口不能有任何具体的方法。如果您需要具有抽象方法定义和具体方法的能力,那么您应该使用抽象类。
注意:这仅适用于 JDK 7 及更低版本。 JDK 8 包括在接口中提供具体方法的默认方法。 (感谢 EJoshuaS)
【讨论】:
Java 8 有default methods,这基本上就是您要问的问题。但是,Java 7 及更低版本不能拥有它;它只能指定强制方法签名。因此,您的问题的答案是“根本没有 - Java 7 不允许这样做。”
据我所知,接口可以拥有的方法数量没有硬性限制。话虽如此,如果您甚至问这个问题,您可能会遇到设计问题,因为您可能正在考虑让您的界面太大。一个好的经验法则是,如果你在描述一个接口的用途,你不应该使用“和”这个词——如果你发现你这样做了,你应该重构它以将它分成多个接口。
编辑:显然最大值是 65535,但没有理由你应该有任何接近这个值的东西。
【讨论】: