我想定义一个Tag
在我正在处理的 Java 包中调用的接口,但由于冲突问题,我不愿使用这样一个听起来很普通的名称。(例如,您只能导入一个具有特定名称的类或接口;如果有多个具有相同名称的类或接口,您可以对其中一个使用 import,但其余的您必须使用整个包名显式引用例如 com.yoyodyne.games.outdoors.Tag)
我也没有更详细的名称(它应该代表一个标签,如 StackOverflow 帖子或其他在线网站中的标签);我能想到的最接近的可能是 TaxonomyTag。
有没有应对这种情况的策略?我能想到的唯一一个是定义一个Collections
包含公共接口的静态类(如)Tag
,例如,如果我调用它,Taxonomy
那么我可以导入Taxonomy
并将 Tag 引用为 Taxonomy.Tag ——但这听起来没有多大帮助.
编辑:这种冲突的一个广为人知的例子是ca.odell.glazedlists.matchers.Matcher和java.util.regex.Matcher如果您尝试将正则表达式与 GlazedLists 库一起使用,这会很痛苦。