首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > 编程 >

ruby 元编程 二 打开类

2013-12-11 
ruby 元编程 2 打开类class Arraydef replace from,toeach_with_index do |e,i|self[i]to if efromende

ruby 元编程 2 打开类
class Array def replace from,to each_with_index do |e,i| self[i]=to if e==from end endendrequire 'test/unit'class Test_replace < Test::Unit::TestCase def test_replace books = ['html5','java','css'] books.replace 'java','ruby' assert_equal books,['html5','ruby','css'] endend

?此时,如果程序中其他的地方用到了Array原有replace的地方,那么那个地方的测试会出错。这就是打开类的隐患,我们称之为猴子补丁。

热点排行