ThePioneer 2009-10-18 15:15
浏览 177
已采纳

[Ruby] 实例属性可以脱离实例吗?

如题,我的rb文件里没有定义类,也没有实例,但可以定义实例属性,如:

@t = 9
puts @t

这个@t是哪个实例的属性?实例属性可以脱离实例吗?谢谢

 

  • 写回答

3条回答 默认 最新

  • rednaxelafx 2009-10-18 17:53
    关注

    Ruby里即便是顶层代码也是在某个对象内部的,这个对象叫做“main”。
    [code="ruby"]class Foo
    def initialize
    @a = 1
    end
    end

    puts Foo.new.instance_variables #=> ["@a"][/code]
    这样可以看到Foo类的实例里有@a成员变量。那么对顶层代码也做类似的查询:
    [code="ruby"]puts self.instance_variables #=> []
    @b = 2
    puts self.instance_variables #=> ["@b"]
    puts self.class #=> Object[/code]

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
查看更多回答(2条)

报告相同问题?

悬赏问题

  • ¥30 深度学习,前后端连接
  • ¥15 孟德尔随机化结果不一致
  • ¥15 apm2.8飞控罗盘bad health,加速度计校准失败
  • ¥15 求解O-S方程的特征值问题给出边界层布拉休斯平行流的中性曲线
  • ¥15 谁有desed数据集呀
  • ¥20 手写数字识别运行c仿真时,程序报错错误代码sim211-100
  • ¥15 关于#hadoop#的问题
  • ¥15 (标签-Python|关键词-socket)
  • ¥15 keil里为什么main.c定义的函数在it.c调用不了
  • ¥50 切换TabTip键盘的输入法