2013-11-03 179 views
2

我正在学习Ruby,我正在尝试开发一款二十一点游戏。如何从同一类的另一个实例方法调用实例方法?

我创建一个类,这里​​是GIST

https://gist.github.com/robypez/7288032

我的手类创建一个玩家一个全新的手的对象(或经销商) 它是一个数组,数组的每卡内是由这个键的散列定义的:card,:suit,:value

我遇到了“compensated_value”方法的问题。 此方法必须使用从实例方法返回的“ace_number”值ace_number

如何从类中的另一个实例方法调用实例方法?

我知道我可以定义一个实例可贵的,就是让我的王牌数量的轨道,但我想知道是否有可能从一个类内的另一个实例方法调用实例方法。

我的实际解决方案是使用实例变量@ace_number,每当我调用方法“receive_card”时,我都会调用方法“is_ace?”在卡上,结果是真实的,我增加了@ace_number变量。

谢谢

回答

6

下面是一些简单的代码来回答的帖子你的主题问题。

如何从同一类的另一个实例方法调用实例方法?

class Foo 
    def bar 
    11 
    end 

    def baz 
    bar 
    end 
end 

Foo.new.baz # => 11 
相关问题