У меня возникает соблазн сделать такой код, используя jGraphT
/*
interface DirectedGraph<V,E> { ...}
interface WeightedGraph<V,E> { ...}
*/
public class SteinerTreeCalc {
public SteinerTreeCalc( < ??? implements DirectedGraph<V,E>, WeightedGraph<V,E> > graph ) {
......
}
}
Я хочу создать конструктор, который запрашивает объект, реализующий два интерфейса.
Обновление:
В моей цели уже выбраны классы для вершин и краев (V и E), но большое спасибо тем, кто придумал:
public class SteinerTreeCalc <V, E, T extends DirectedGraph<V, E> & WeightedGraph<V, E>>
{
....
}