查看: 3003|回复: 1

attr_reader和attr_accessor有什么区别?

  [复制链接]
头像被屏蔽
梦石
0
星屑
50
在线时间
0 小时
注册时间
2006-1-3
回帖
125
发表于 2008-3-16 06:10:02 | 显示全部楼层 |阅读模式
提示: 作者被禁止或删除 内容自动屏蔽
签名被屏蔽

酱油的

梦石
0
星屑
1840
在线时间
2161 小时
注册时间
2007-12-22
回帖
3216

贵宾

发表于 2008-3-16 06:58:44 | 显示全部楼层
attr_reader - 生成只可讀接口
attr_writer - 生成只可寫接口
attr_accessor - 生成可寫可讀接口
如果讀取只可寫接口就會發生錯誤,同樣改寫只可讀接口也會發生錯誤
class A
  attr_accessor :w1
  attr_reader :w2
  attr_writer :w3
end
p A.new.w1 = 20 #=> 20
p A.new.w2 = 20 #=> NoMethodError
p A.new.w3 = 20 #=> 20
p A.new.w1#=> nil
p A.new.w2#=> nil
p A.new.w3#=> NoMethodError

系统信息:本贴由楼主认可为正确答案,66RPG感谢您的热情解答~
不做頭像做簽名,看我囧冏有神(多謝山人有情提供 )
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册会员

本版积分规则

Powered by Discuz! X5.0 © 2001-2026 Discuz! Team.

在本版发帖返回顶部