Я видел очень много примеров получения обратного вызова от адаптера, но вызывающим классом был Activity или Fragment, но теперь у меня есть действие, которое вызывает ClassA, как вы говорите, и ClassA вызывает адаптер, и мне нужен обратный вызов для использованияв ClassA, а не в Activity,
Я видел очень много примеров Activity или Fragment, но не класса других типов: Обратный вызов из адаптера или Как вернуть обратный вызов из Адаптера в класс фрагмента
Обратные вызовы - это базовые функции, которые запускаются при возникновении события, независимо от того, какой класс или тип вызываемого класса вызвал его.
Вот действительно хороший урок по Обратному вызову