Ruby语言是解释性语言,故其在语法上,所有的语句皆是可执行的。以此观点看待类的定义和方法的定义,很多令人迷惑之处就自动解开了。
class Foo < (user_input == '1' ? Bar : Baz) # 如果用户输入是"1"则继承Bar否则继承Baz
#...
end
在诸如Java这样的语言中,这样的语法简直无法想象。
Ruby语言是解释性语言,故其在语法上,所有的语句皆是可执行的。以此观点看待类的定义和方法的定义,很多令人迷惑之处就自动解开了。
class Foo < (user_input == '1' ? Bar : Baz) # 如果用户输入是"1"则继承Bar否则继承Baz
#...
end
在诸如Java这样的语言中,这样的语法简直无法想象。