为什么Java接口在文档中有描述
我知道接口内部只有方法声明,只有当某些类实现接口时才提供方法声明的实现(我不是说默认方法或函数接口) 问题是:为什么Java文档、教程、书籍或其他信息源会提供接口方法的描述?例如,提供了为什么Java接口在文档中有描述,java,syntax,interface,Java,Syntax,Interface,我知道接口内部只有方法声明,只有当某些类实现接口时才提供方法声明的实现(我不是说默认方法或函数接口) 问题是:为什么Java文档、教程、书籍或其他信息源会提供接口方法的描述?例如,提供了列表接口方法的完整描述,但是如果它只是一个接口,那么这些方法不应该提供任何功能,那么这些文档中描述了什么呢?Joshua Bloch(有效Java)-如果要使用API,就必须对其进行记录 除非您记录您的接口方法,否则其他人(API用户)将不知道- 它做什么(而不是如何做) 它的先决条件 它的后条件 它的副作用 它
列表
接口方法的完整描述,但是如果它只是一个接口,那么这些方法不应该提供任何功能,那么这些文档中描述了什么呢?Joshua Bloch(有效Java)-如果要使用API,就必须对其进行记录
除非您记录您的接口方法,否则其他人(API用户)将不知道-记录接口方法还有一个额外的优势:继承使用
{@inheritardoc}
有效Java——第44项规定:
Javadoc能够“继承”方法注释。如果一个API
元素没有doc注释,Javadoc搜索
具体适用的文档注释,优先考虑接口而不是
超级类。有关搜索算法的详细信息,请参见
Javadoc参考指南[Javadoc ref]。您还可以继承的一部分
使用{@inheritDoc}标记的超类型的文档注释。这就是说,,
除此之外,这些类还可以重用来自的文档注释
它们实现的接口,而不是复制这些注释。这
设施有可能减少维护的负担
多组几乎相同的文档注释
Joshua Bloch(高效Java)-如果要使API可用,必须对其进行文档化
除非您记录您的接口方法,否则其他人(API用户)将不知道-记录接口方法还有一个额外的优势:继承使用
{@inheritardoc}
有效Java——第44项规定:
Javadoc能够“继承”方法注释。如果一个API
元素没有doc注释,Javadoc搜索
具体适用的文档注释,优先考虑接口而不是
超级类。有关搜索算法的详细信息,请参见
Javadoc参考指南[Javadoc ref]。您还可以继承的一部分
使用{@inheritDoc}标记的超类型的文档注释。这就是说,,
除此之外,这些类还可以重用来自的文档注释
它们实现的接口,而不是复制这些注释。这
设施有可能减少维护的负担
多组几乎相同的文档注释
描述是接口对象及其方法的目标,如果没有描述,则在实现此接口对象时,您将不知道如何在方法中编写 例如,方法void clear()是什么 选项1)删除所有对象 选项2)删除最后一次插入列表 选项3)删除重复的对象 等等
当然,这是一个简单的示例,您可以猜测clear()的目标是选项1,但有时它要复杂得多。描述是接口对象及其方法的目标,如果没有描述,您将不知道在实现此接口对象时如何在方法中编写 例如,方法void clear()是什么 选项1)删除所有对象 选项2)删除最后一次插入列表 选项3)删除重复的对象 等等
当然,这是一个简单的示例,您可以猜到clear()的目标是选项1,但有时它要复杂得多。因为您必须明确指定接口背后的动机以及调用方和实现方的契约 也就是说,接口中的注释面向两个受众:调用者和实现者。双方都应该意识到他们可以期待什么,他们应该如何表现
显然,就像普通类一样,接口中的文档应该遵守标准JavaDoc的规则。因为您必须清楚地指定接口背后的动机以及调用方和实现方的契约 也就是说,接口中的注释面向两个受众:调用者和实现者。双方都应该意识到他们可以期待什么,他们应该如何表现
显然,就像普通类一样,接口中的文档应该遵循标准JavaDoc的规则。简单。因为,的接口需要javadoc,为实现这些接口的Java开发人员提供信息。因为,我们需要javadoc作为接口,以便向实现这些接口的Java开发人员提供信息。如果没有文档,如果我有一个
列表
,我怎么知道会出现什么行为呢?你的意思是:如果实现了该方法,该怎么办呢?嗯,我的想法完全相同,但它看起来有点过于抽象,因为您已经知道接口用于从一个类到另一个类的通信。因此,为两个类之间的通信创建了接口,这两个类的通信方法已经在这个唯一的接口中定义。这意味着如果接口定义了某种方法