Используйте аутентификацию по умолчанию и отдельное сокрытие/олицетворение в вызове DCOM

Поскольку у вас нет

def initialize
  @game_score = 0
end

Назначение в определении класса не делает то, что вы думаете, что оно делает, и когда hit вызывается, он не может добавить к nil.

Если вы теперь спросите , что случилось с @game_score? , ну, всегда помните Класс - это объект и . Объект является class .

Это здорово, как классы Ruby имеют такое «реальное» существование в Zen. Ruby точно не имеет названных классов, скорее, имена классов являются ссылками на объекты класса Class. Назначив @game_score вне метода экземпляра, вы создали экземпляр экземпляра класса , атрибут объекта класса Bowling, который является экземпляром класса Class. Эти объекты, в общем, не очень полезны. (См. Главу 1, Путь Ruby , Хэл Фултон.)

43
задан Bill the Lizard 2 June 2011 в 13:05
поделиться