0
우리는이 : 메서드가 재정의되지 않는 이유는 무엇입니까? 예를 들어
module X
def test
"X"
end
end
module Y
def test
"Y"
end
end
class L
include X
end
L.new.test #=> "X"
class L
include Y
end
L.new.test #=> "Y"
class L
include X
end
L.new.test #=> "Y"
여기 이상한 일이다. 마지막 include가 메소드를 X의 메소드로 변경하지 않은 이유는 무엇입니까?
그러나 모듈이 클래스에 포함될 때마다 '포함 된'모듈 콜백을 호출하는 이유는 무엇입니까? – megas
'Module # include' 소스를보세요. 우선'append_features'를 호출하고 모듈이 실제로 포함되었는지 아닌지에 관계없이'included' 후크를 호출합니다. –