Project1
标题:
关于类的重新定义的问题
[打印本页]
作者:
风若·飘絮
时间:
2014-4-5 19:21
标题:
关于类的重新定义的问题
class A
xxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxx
xxxxxxxxxxxxxxxxxxx
end
然后写 class A
aaaaaaaaaaaaaa
end
是覆盖原来的,还是加上新的?
作者:
你最珍贵
时间:
2014-4-5 19:47
貌似是加上新的。。自己试试不就行了么啊
作者:
taroxd
时间:
2014-4-5 19:57
本帖最后由 taroxd 于 2014-4-30 20:21 编辑
加上新的,但是同名方法会覆盖原来的方法。
要完全重写类,可以用Object.send(:remove_const, :ClassName)来完成
作者:
天地有正气
时间:
2014-4-5 20:24
本帖最后由 天地有正气 于 2014-4-5 20:26 编辑
举个例子吧:
class Rpglt
end
复制代码
然后
class rpglt
attr_accessor :hp
end
复制代码
之后在
class Rpglt
attr_accessor :sp
end
复制代码
这两个实例变量都存在了。
如果
class Rpglt
def xz
p "I'm XiaoZhou."
end
end
复制代码
之后在
class Rpglt
def aa
p "啊啊"
end
end
复制代码
aa和xz两个方法都存在。
接下来
class Rpglt
def xz
p "I'm TianDiYouZhengQi."
end
end
复制代码
此时方法xz已经变成了显示“我是天地有正气。”
欢迎光临 Project1 (https://rpg.blue/)
Powered by Discuz! X3.1