【发布时间】:2010-09-17 22:13:21
【问题描述】:
我有一个已经具有“自然”顺序的类,并希望定义一个不同的 Comparator 可以类似于String.CASE_INSENSITIVE_ORDER 使用 - 即将它定义为一个实例化的静态字段,以便在需要时引用。
对于作为实际比较类型的接口 Foo(它将是 Comparator<Foo>),我赞成将它放在那里而不是 FooImpl(在这种特定情况下只有一个实现,如果有区别的话)。它是使用类似于 String 的内部类实现的,当然该类必须是公共的,因为 Foo 是一个接口。
想知道将它放在 FooImpl 中而不是 Foo 中是否更好,如果是,为什么?另外我不关心实现类的公共可见性,但它应该是一个独立的独立包可见实体吗?
【问题讨论】:
标签: java interface comparator