0
A
答えて
2
はい、モジュールは一般的な答えです。より具体的なニーズ(たとえば、2つの異なるクラスの機能をマージするクラスを持つなど)がある場合は、委任などの他のオプションがあります。
あなたはそれを継承するものに「クラスのメソッドを提供するモジュールが必要な場合、あなたはおそらく、この一般的なパターンを使用することに注意してください:
module Foo
def aaa
"hi"
end
module ClassMethods
def bbb
"mom"
end
end
def self.included(other)
other.extend ClassMethods
end
end
class Bar
include Foo
end
puts Bar.new.aaa, Bar.bbb
#=> hi
#=> mom
関連する問題
- 1. UIフリーズ問題を克服するThread.Join()の代替手段は何ですか
- 2. Java:Apache Poiでcsv date変換の問題を克服する
- 3. Java継承の制限を克服する(ご意見/ご提案)
- 4. C++の単純継承問題
- 5. 複数の開発者+単一のダイナミクスCRMインスタンス+ Git - 課題を克服する方法
- 6. NHibernate NotSupportedExceptionを克服する
- 7. kafka.consumer.ConsumerTimeoutExceptionを克服する方法
- 8. make_shared constnessを克服する方法
- 9. 単一テーブルの継承クエリ
- 10. 単一の仮想継承
- 11. NHibernate単一テーブルの継承
- 12. Ruby on Rails単一テーブル継承(STI)と単体テストの問題(PostgreSQL)
- 13. 克服親
- 14. 単一のテーブル継承エンティティがクラステーブル継承エンティティを拡張できますか?
- 15. C++の継承の問題
- 16. mysqlとテーブルデータの時間的な問題を克服するには?
- 17. 継承の問題。 - Python
- 18. Unity問題の継承
- 19. Hibernate継承の問題
- 20. gccテンプレートの継承問題
- 21. テストと継承の問題
- 22. クラスデザインと継承の問題
- 23. ostream/ofstream継承の問題
- 24. Objective Cの継承問題
- 25. Java継承コンストラクタの問題
- 26. Javascriptの継承問題
- 27. pythonメタクラスの継承問題
- 28. Android + jfreeSVG:継承の問題
- 29. tessnetのメモリリークを克服するには?
- 30. inodeの制限を克服する