我有这样的课:
class MainClass
def self.method_one(String)
puts "#{self.class} a"
end
def self.method_two(String)
puts "#{self.class} a"
end
end
我有一个继承的类MainClass
:
class NewClass < MainClass
#any_mathod should match any method that is called for NewClass call
def self.any_method(a,b)
puts "#{self.class} b"
super(a)
end
end
有什么方法可以从MainClass
运行它们时扩展所有方法NewClass
而不重新定义它们NewClass
以接受两个参数而不是一个参数,例如:
NewClass.method_one(String1, String2)
它会产生:
#=> NewClass String2
#=> MainClass String1
并在类内处理String1
参数。NewClass
对于所有方法,附加参数的处理器都是相同的。