Да зачем тут код. Еще один пример группировки интерфейсов. Чтобы у множества классов каждый раз не прописывать все интерфейсы (Class A implements B, C, D), от которых он наследуется, делается базовый интерфейс, от которого наследуются другие. Классы же в итоге реализуют интерфейсы N-о уровня (уровней немного обычно). Да, согласен, что, обычно, проще реализовать стратегию, но все зависит от ситуации.
И еще. Вы писали "Хочу interface A implements B, C". Через extends имели ввиду, наверное.