【发布时间】:2016-08-08 18:07:15
【问题描述】:
假设我有一个类似的方法:
Map<String,Object> getData()
假设可能的键列表和这些键的对象类型已知,那么记录它将包含哪些键和值的好方法是什么?
[编辑]
假设我不能/不会以需要更改其他代码的方式更改方法,我该如何合理地记录它?
【问题讨论】:
标签: java documentation javadoc
假设我有一个类似的方法:
Map<String,Object> getData()
假设可能的键列表和这些键的对象类型已知,那么记录它将包含哪些键和值的好方法是什么?
[编辑]
假设我不能/不会以需要更改其他代码的方式更改方法,我该如何合理地记录它?
【问题讨论】:
标签: java documentation javadoc
我建议使用列出这些键的枚举(如果这对您的情况有意义,可能还有另一个用于值类)。假设您确实预先知道所有个潜在的键,那将是最有意义的。从那里开始:如果您的密钥确实已知且有限,那么为什么要使用字符串作为密钥?你也可以改用Map<EnumForKeys, Object>。
好处是您可以在每个枚举常量上放置漂亮的 javadoc;见here。而且你知道,假设值类对于每个不同的键都是固定的,你可以在那个 Enum 上放置一个方法,它实际上直接告诉你值类。
下一个但远没有那么吸引人的选项是在某处放置一些静态列表,其中包含所有潜在的键。
编辑:鉴于您最后的评论选项当然非常有限。在这种情况下,您仍然可以使用 Enum 列出潜在键,并将 {@link} 放入方法的 javadoc 中。当然,所有这些都只是“非正式的”;但是,总比没有好。
【讨论】: