для примеров этого.
у использовать такой интерфейс:
public interface ResultItem {
public int getConfidence();
public boolean equals(ResultItem item);
public ResultItem cloneWithConfidence(int newConfidence);
}
У меня это реализовано различными видами объектов, представляющих результат распознавания голоса.
Идея в том, что я хочу сравнить только результаты одного и того же вида. То есть, если я создаю классIntResult
реализацииResultItem
Хочу, чтобы сигнатуры метода стали:
public boolean equals(IntResult item);
public IntResult cloneWithConfidence(int newConfidence);
Я чувствую, что в моем интерфейсе есть недостаток дизайна, потому что сейчас я использую довольно уродливые приведения к результатам cloneWithConfidence и других методов, возвращающих ResultItem.
Есть ли способ лучше?