У меня есть небольшая проблема, чтобы потушить.Мне нужен класс / несколько классов, которые могут удовлетворить эти требования:
- Содержит идентификатор строки
- Содержит функцию, которая имеет параметры различных типов и даже возвращает значения ((String, String) -> Object Message - (String, List) -> Obj Message - (String, String) -> Boolean ...)
- Имеет жестко запрограммированный параметр, который отображает класс в другой (Props.create (otherclass))
Мне нужен некоторый абстрактный класс или интерфейс, поскольку объект представляет узлы графа, поэтому они должны иметь один и тот же тип.
Эточто пришло мне в голову до сих пор:
public abstract class UserNode <K, V, R>{
private String Id;
private UserFunction<K, V, R> f;
private Props props;
public UserNode(String id, UserFunction<K,V,R> f, Props props) {
this.Id = id;
this.f = f;
this.props = props;
}}
public class MapNode extends UserNode {
public MapNode(String Id, UserFunction<String, String, Message> f){
super(Id, f, Props.create(MapProcessor.class));
}}
public interface UserFunction <K, V, R> {
R process(K key, V value);
}