gpt4 book ai didi

clojure - 为什么我应该在 clojure 中使用 Reify 而不是 proxy?

转载 作者:行者123 更新时间:2023-12-03 07:39:16 26 4
gpt4 key购买 nike

为什么我应该在 clojure 中使用 Reify 而不是代理?

最佳答案

reify 的方法体是词法闭包,可以引用周围的局部作用域。 reifyproxy 的不同之处在于:

  • 仅支持协议(protocol)或接口(interface),不支持具体的父类(super class)。
  • 方法主体是生成类的真正方法,而不是外部 fns。
  • 直接调用实例上的方法,不使用映射查找。
  • 不支持方法映射中方法的动态交换。

结果是在构造和调用方面都比代理具有更好的性能。在其约束不禁止的所有情况下,reify 都优于 proxy

来源:http://clojure.org/datatypes

关于clojure - 为什么我应该在 clojure 中使用 Reify 而不是 proxy?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5821892/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com