Я разрабатываю библиотеку на Java, которая содержит некоторые функциональные возможности, в которых некоторые значения должны будут проходить через какую-то функцию, чтобы преобразовать или отобразить их таким образом.Если вам нужна более подробная информация, это робототехническая библиотека, в которой необходимо математически изменить наборы уровней выходной мощности двигателя.
В настоящее время я реализовал это через интерфейс Mapper
с run
метод, который принимает метод карты.Пользователи используют это так:
wheelValues.map(new Mapper() {
@Override
public double run(double input) { ••• }
});
Дело в том, что я хочу включить некоторые реализации по умолчанию интерфейса Mapper для удобства пользователя, например абсолютное значение Mapper.Я хочу сделать это свойством интерфейса Mapper как-нибудь.Как лучше всего подойти к этому, статический внутренний класс или статические открытые поля?
public interface Mapper {
// This?
static final Mapper ABS = new Mapper() {...}
// Or this?
static class Abs implements Mapper {...}
}