【发布时间】:2015-02-20 02:54:47
【问题描述】:
我想要一个用于此枚举的类型化、特定于实现的方法。编译器不喜欢 @Override 注释,但我不知道为什么。更重要的是,我怎样才能制作一个比较这两个(类型化)对象的方法?
public enum BrokenToy{
BROKEN_ARROW {
@Override
public <T extends Set<Object>> double compare(
T prop1, T prop2) {
return 1.0;
}
};
public abstract <T> double compare(T prop1, T prop2);
}
理想的答案是我把符号搞砸了,我需要更改一些语法,但是唉……[悲伤的鸭子脸]。 This 将是应对当前挑战的另一种方式(哦,它不起作用?多么敏锐)。在方法中输入感觉不干净,所以让我们将其视为最后的手段。
【问题讨论】:
-
你想做什么?您如何比较两个
Set<Object>s,这与BROKEN_ARROW和BrokenToy有何关系? -
@SotiriosDelimanolis '我怎样才能创建一个方法来比较这两个(类型)对象?'
-
这些2指的是什么?
prop1和prop2?为什么他们是Set<Object>?你会如何比较它们?比较方法是什么?客户端代码打算如何使用compare方法? -
天哪,看起来它们是可以在“比较”方法中进行比较的任意对象,并且客户端代码会从比较中得到双倍的结果。
-
我在问一些上下文。为什么这需要在
enum内?为什么你不能只创建一个Comparator? What is an XY-problem?
标签: java generics enums overriding