Во-первых, это всего лишь вопрос объектно-ориентированного программирования, который не относится ни к какому конкретному языку.
Это довольно стыдно для меня. Этот инцидент произошел на работе, и я стеснялся разъяснять это моим коллегам, поскольку это указывало бы на плохое понимание объектно-ориентированного программирования с моей стороны. Итак, вот инцидент:
Существует класс A, который реализует интерфейс I. Этот интерфейс имеет метод M. Класс A определил тело или, скорее, реализацию этого метода.
Теперь у меня есть инструмент, с помощью которого я могу узнать, какой другой класс или программа использует, или, другими словами, вызывает класс A -> метод M. Когда я использовал этот инструмент, он не дал никаких результатов; Признак, который я принял как отсутствие класса, - это вызов метода M.
Когда я поделился своими наблюдениями со старшим коллегой, он просто пошел к интерфейсу I -> метод M и использовал инструмент для этого. Вернулось немало результатов. Он сказал мне, что это классы или методы, которые вызывают метод М., и попросил меня продолжить.
Этот результат, очевидно, является списком тех классов, которые реализуют интерфейс I.
Но что я не понял, так это как набор классов или методов, которые вызывают класс A -> метод M. Поскольку я с уверенностью сказал своему коллеге, что ни один класс не вызывает метод M, после того, как он показал мне список результатов, я Я был слишком смущен, чтобы спросить его, каков результат, который я ищу.
Есть идеи, на что намекает мой коллега?
С уважением,
Митхун