在Java API中,它声明公共StringBuilder类扩展了Object,但实际上,OpenJDK声明它扩展了包私有的AbstractStringBuilder类。问题:为什么Java API不能仅仅声明它扩展了AbstractStringBuilder?
OpenJDK- 公共最终类StringBuffer 扩展AbstractStringBuilder 实现java.io.Serializable,CharSequence
答案 0 :(得分:1)
这是javadoc
命令中使用的配置设置。您可以指定要包含在生成的javadoc中的类。默认设置为-protected
,它将包括public
和protected
类,但不包括软件包中的类或private
的类。假设您具有以下类层次结构:
public class TopParentName {}
(package) class MiddleName extends TopParentName {}
public class LeafName extends MiddleName {}
在运行javadoc
命令而没有-package
标志的情况下,您只会看到类TopParentName
和LeafName
,并且您会看到LeafName
将扩展来自TopParentName
,即使在源代码中没有。但是,当您使用-package
标志时,您会看到所有三个具有正确继承链的类。
话虽这么说,官方Javadocs很可能不是使用-package
或-private
标志生成的,因此类AbstractStringBuilder
类在生成的javadocs中不可见。>