Столь ли нужна "утиность" по отдельным методам?

Метод не является обычно полноценным интерфейсом.

Интерфейс - это группа методов.

В порядке бредогенерации, другой вариант:

- связывание нескольких объектов вместе как граней "мультиобъекта", когда вы можете запросить грань другого типа.

Поддержка:
- рантайм у всех объектов вводит доп. указатель facets - кольцевой список связанных вместе объектов-граней.
- Библиотечная процедура, условно, Facet(obj, needleFacetTypeTag).