'attr_reader' 是否可以在整个类中使用局部变量?

毗湿奴普拉桑

为什么type变量is_a_peacock?在下面方法中可用

class Animal
    attr_reader :type

    def initialize(type)
        @type = type
    end

    def is_a_peacock?
        if type == "peacock"
            return true
        else
            return false
        end
    end
end

an = Animal.new('peacock')
puts an.is_a_peacock? # => true

为什么注释掉@typemake的初始化type不可用?

class Animal
    attr_reader :type

    def initialize(type)
        #@type = type
    end

    def is_a_peacock?
        if type == "peacock"
            return true
        else
            return false
        end
    end
end

an = Animal.new('peacock')
puts an.is_a_peacock? # => false
塞尔吉奥·图伦采夫

“为什么注释掉@typemaketype不可用的初始化?”

它不是。方法type可用。只是没有初始化。因为你注释掉了。

如果方法type不可用,您的程序就会崩溃。(就像您注释掉 时一样attr_reader)。

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

对象#使用 attr_reader 发送

如何在 Ruby 的 attr_reader 和 attr_writer 中使用变量@@?

为什么要使用Ruby的attr_accessor,attr_reader和attr_writer?

使用多个变量将Sorbet类型签名添加到attr_reader / attr_writer

“ attr_accessor” /“ attr_reader”创建实例变量是什么意思?

启用标记为“attr_reader”的类实例属性的更改值

attr_reader不允许我访问其他控制器中的变量

除了读取实例变量之外,attr_reader在ruby中还有什么其他用途

attr_reader 不好吗?

活动记录模型属性的Attr_reader

自动为符号生成“attr_reader”

attr_reader仅在某些环境中工作

构造函数中许多attr_reader的简写

获取该类的attr_reader,writer或accessor的引用

attr_reader,attr_writer,attr_accessor方法在哪里存在?如何实施?

是否可以在ngFor中使用简写局部变量?

是否可以在Node中使用“线程”局部变量?

关于attr_accessor的ruby,实例变量,局部变量

我可以在testCafe中使用局部变量吗?

在变量中使用 attr() 添加类?

子函数中是否可以使用局部变量?

设置局部变量并在整个查询批处理中使用?

在 Android Java/Kotlin 中,实现接口是否可以直接访问嵌套类的局部变量

是否可以根据实际类中的局部变量为方法调用返回模拟对象?

是否确定以下代码中使用的参数,参数,局部变量和全局变量?

类变量与局部变量

在另一个类中使用局部变量的方法(在jsp页面中展示)

是否应在Makefile中使用局部变量的较长同义词?

无法返回类的属性,但是可以返回局部变量?