Spring Framework дизайн с интерфейсами

У меня есть приложение Java Spring, разработанное как показано ниже:

public interface A{
  method A;
  method B;
}

Class ACon implements A{

}

public interface B{
  method A;
  method B;
}

Class BCon implements B{

}

Теперь у меня есть 2 общих метода - скажем methX и methY, которые могут быть общими для обоих классов ACon и BCon. Они оба используют одни и те же экземпляры Autowired. Как я могу вписаться в methX и methY, не повторяя тогда в ACon и BCon?

Всего 1 ответ


Создайте базовый класс с «общей» реализацией для методов и убедитесь, что ACon и BCon расширяют базовый класс:

class BaseCon {
    public void methodX (){
    ...
    }

    public void methodY (){
    ...
    }
}

class ACon  extends BaseCon implements A{
...
}

class ACon  extends BaseCon implements A{
...
}

Есть идеи?

10000