赞 | 2 |
VIP | 33 |
好人卡 | 33 |
积分 | 14 |
经验 | 54000 |
最后登录 | 2024-9-21 |
在线时间 | 1295 小时 |
Lv3.寻梦者
- 梦石
- 0
- 星屑
- 1358
- 在线时间
- 1295 小时
- 注册时间
- 2012-8-4
- 帖子
- 749
|
加入我们,或者,欢迎回来。
您需要 登录 才可以下载或查看,没有帐号?注册会员
x
#找出不同的原因
class A
attr_accessor :b
@@a = 5
def initialize(n)
@b = n
end
def a
return @@a
end
def a=(n)
@@a = n
end
end
#_运算一________________________________
v1 = A.new("a5")
v2 = A.new("a9")
p v1.a #=>"5"
p v1.b #=>"a5"
p v2.a #=>"5"
p v2.b #=>"a9"
#_运算二_______________________________________
v2.a = "a4"
v2.b = "a8"
p v1.a #=>"a4"
p v1.b #=>"a5"
p v2.b #=>"a8"
p v2.a #=>"a4"
# 定义类
class B
attr_accessor :a
@a = 100
@@a = 999
def a2
return @@a
end
def a2=(a2)
@@a = a2
end
end
# 生成实例
v1 = B.new
v2 = B.new
# 测试
v1.a = "晕倒"
v2.a = "死撑"
p v1.a # “晕倒”
p v2.a # “死撑”
v1.a2 = "第一个"
v2.a2 = "第二个"
p v1.a2 # "第二个"
p v2.a2 # "第二个"
█问题:这句v2.a2 = "第二个"的解释是修改@@a的值吗?
# 定义类
class B
attr_accessor :a
@a = 100
@@a = 999
def a2
return @@a
end
def a2=(a2)
@@a = a2
end
end
█问题:为什么这里第二个用a2
█而下一个用的是a=(n),括号里面的n是一个什么样的数?
class A
attr_accessor :b
@@a = 5
def initialize(n)
@b = n
end
def a
return @@a
end
def a=(n)
@@a = n
end
end
|
|