【发布时间】:2019-12-08 21:02:05
【问题描述】:
在 MRI Ruby 中,何时分配单例类?
我刚刚发现单例类也可以有自己的单例类。
因此,可以调用
Object.singleton_class.singleton_class.singleton_class.singleton_class...
直到时间结束。显然,默认情况下,虚拟机不会分配所有这些单例类。
Ruby 虚拟机何时分配单例类?如果我没有在其上定义任何方法并且不调用Object#singleton_class,那么对象是否有一个单例类?
【问题讨论】:
-
这不只是一个实现问题吗?在创建对象时创建单例类或首次引用对象的单例类是否重要?