5
:中Rubyはネストされたクラスの継承をどのように扱いますか?次のテストケースで
class Package
class Component
def initialize
p [:initialize,self]
end
end
end
class Package_A < Package
end
class Package_B < Package
end
# Why are the following components of type Package and not Package_A and Package_B
component=Package_A::Component.new
p component
component=Package_B::Component.new
p component
結果:
[:initialize, #<Package::Component_1:0x2c0a8f8>]
#<Package::Component:0x2c0a8f8>
[:initialize, #<Package::Component_1:0x2c0a5b0>]
#<Package::Component:0x2c0a
はどのようにして、特定のPackage_A.componentとPackage_B.componentを得るのですか?
上記の例のおかげで@スロー...私はアプリケーションの問題を解決するために使用しました。おそらく誰かがクラス1、クラス2 inheritable_nested_class ** を支援しようと... ** 例:ディレクティブは言って、これは上記の定型につながるコンポーネント inheritable_nested_class自動的にクラスから継承するサブクラスで生成されています。それは高度なメタプログラミングクラスで素敵な割り当てをするでしょう:-) – DMisener