你永远不会在你的abc=方法中设置@abc .应该是这样的
abc=
def abc=(val) @abc = val end
除了Logan的答案,它告诉你错误是什么,这里的错误永远不会发生在第一位:
class Foo def initialize(l) @label = l end attr_reader :label attr_accessor :abc end