为什么 MyClass.allocate
是 Ruby 中的公共(public)方法?在什么情况下您希望创建对象但不对其运行initialize
?
最佳答案
我想到了反序列化。一个类可能是可序列化的,但可能没有不带任何参数的初始化,并且该代码不需要将其初始化为只是为了立即撤消该工作的东西。
基本上,在您以与典型情况不同的方式初始化对象的任何情况下,将这两个步骤分开都是很有用的。
关于ruby - 为什么 Class#allocate 在 Ruby 中是公共(public)方法?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5057015/