当我开始上课时,自我传递

当我在B里面调用A.new时,是否有办法自动获取某些对象而不指定它? 我希望自动将selfB传递到A而不指定它。

 class A initialize object=target-self end end class B A.new end 

然后,除非我指定另一个类,否则每次我希望self都被默认传递时,我不必输入它。

  A.new self 

这很简单。 你所要做的就是写:

 class A def initialize(object = self) # work with object end end 

Ruby中总有一个self价值。 在您提供的示例中,它将评估为B类。 要使它成为类的实例,只需在初始化期间调用该方法:

 class B def initialize A.new # self is a B instance here end end