Тела метода reify
являются лексическими замыканиями и могут относиться к окружающей локальной области видимости.reify
отличается от proxy
тем, что:
- Поддерживаются только протоколы или интерфейсы, без конкретного суперкласса.
- Тела методов являются истинными методами результирующего класса, а не внешнимиfns.
- Вызов методов в экземпляре является прямым, без использования поиска в карте.
- Нет поддержки динамического обмена методами в карте методов.
результат - лучшая производительность, чем у прокси, как в построении, так и в вызове.reify
предпочтительнее proxy
во всех случаях, когда его ограничения не являются запретительными.
Источник: http://clojure.org/datatypes