1
클래스 D
에 인스턴스 메서드 및 클래스 메서드로 구성된 몇 가지 공통 기능을 추가하고 싶습니다. 아래 에서처럼이 작업을 시도했지만 작동하지 않았습니다. 이것을 달성하는 올바른 방법은 무엇입니까?Ruby에서 인스턴스 및 클래스 메서드를 래핑하는 방법은 무엇입니까?
module A
def foo
puts "foo!"
end
end
module B
def wow
puts "wow!"
end
end
module C
include A # instance methods
extend B # class methods
end
class D
include C
end
D.new.foo
D.wow
감사합니다! 여기서 '자기'의 의미는 무엇입니까? 내가 생략한다면? –
자체는 "모듈 메소드"를 포함합니다. "클래스 메소드"와 유사합니다. 제거하면 작동하지 않습니다. –
@Misha 생략하면 생략됩니다. 'def self.xxx'는 인스턴스에 의해 상속 될 메소드가 아니라 클래스/모듈 자체에 대한 메소드를 정의합니다. – Phrogz