如果我有一个与类继承一起包含的模块,那么外观路径如何决定在哪里调用“super”。我的预感是默认情况下它将使用模块中的初始化方法。它是否正确?如果是这样,我如何明确告诉代码使用继承类中的初始化方法?
下面贴出一个例子:
我希望 Employee 类从 Other 而不是 Subject 继承初始化。
module Subject
def initialize
@observers = []
end
end
class Other
def initialize
@other_stuff = []
end
end
class Employee < Other
include Subject
attr_reader :name
def initialize(name)
super()
end
end