Ruby 继承父类有参数如何实现?
英文原文 http://rubyblog.pro/2017/07/i...
Rails 5 中可以看到migration定义中会有版本参数 ActiveRecord::Migration[5.0]
原理是只要<
后边返回的是类对象就可以
基本继承
class Human; end
class Man < Human
end
也可以这样,foo 为 Human 类
class Human; end
foo = Human
class Man < foo
end
类似的
class Human; end
def parent_class
Human
end
class Man < parent_class
end
实现带参数版本
class Human
def self.[](version)
puts version
self
end
end
class Man < Human[:basic]
end
会打印 basic,Human[:basic]
表示调用类方法Human.[]
参数是 :basic
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。