Preciso de uma interface que me garanta a disponibilidade de um determinado método, incluindo assinatura específica. Até agora, é o que tenho:
public interface Mappable<M> {
M mapTo(M mappableEntity);
}
O problema surge quando uma classe deve ser mapeada para várias outras entidades. O caso ideal seria este (não java):
public class Something implements Mappable<A>, Mappable<B> {
public A mapTo(A someObject) {...}
public B mapTo(B someOtherObject) {...}
}
Qual seria a melhor maneira de conseguir esse remanescente o mais "genérico" possível?