933 подписчика
Очень кратко про рефлексию.
Рефлексия — это специальное API, которое позволяет получить доступ к данным приложения во время выполнения.
С помощью рефлексии мы можем узнать кучу всего о классах, методах и т.п. А еще мы можем получить приватные поля и даже изменить их значения. И можем создавать экземпляры класса прямо во время выполнения.
Рефлексия работает через java.lang.Class. JVM создает его для каждого объекта и именно через него мы можем всё делать.
Почему не любят рефлексию? Чуть выше я писала, что так мы можем получать доступ к приватным полям и менять значения. И тут мы напрочь ломаем инкапсуляцию и архитектуру приложения. Плюс дополнительно из-за того что мы все делаем динамически, снижается производительность. Ну и код, написанный с помощью рефлексии, довольно сложный и запутанный.
Около минуты
13 апреля 2022
159 читали