相关疑难解决方法(0)

使用元类的__call__方法而不是__new__?

在讨论元类时,文档说明:

您当然也可以覆盖其他类方法(或添加新方法); 例如__call__(),在调用类时,在元类中定义自定义方法允许自定义行为,例如,并不总是创建新实例.

我的问题是:假设我想在调用类时有自定义行为,例如缓存而不是创建新对象.我可以通过覆盖__new__类的方法来做到这一点.我什么时候想要定义一个元类__call__?这种方法给出了什么,这是不可能实现的__new__

python oop metaclass

35
推荐指数
4
解决办法
2万
查看次数

标签 统计

metaclass ×1

oop ×1

python ×1