我正在玩模块和类来完成一些事情。
当我在没有任何继承的情况下启动 MyClass 时class MyClass::A4.generate
,A4 会覆盖格式功能。
A4 看起来像这样:
class A4 < MyClass
def somefunction
format = { :width => 200, :height => 100 }
end
end
但现在我想在几种格式上创建多个类(生成不同类型的文件)。
我的第一次尝试是,class MyClass < AnotherClass
但这更像是在 Ruby 中尝试 Javacode,这就是互联网上很多人所说的。
现在第二次尝试更像 Ruby:
module AnotherModule
def somefunction
format = { :width => 50 }
end
end
class MyClass
include AnotherModule
def initialize
end
......
end
这样的事情可能吗?
class A4 < AnotherModule
def somefunction
format = { :width => 200, :height => 100 }
end
end
MyClass::A4.new.generate
如果是这样,怎么做?