# Adapter パターン # # Java言語で学ぶデザインパターンと同様の例題をRubyで記述した。 # # coded by Takehiro Kaga # class Banner def initialize(string) @string = string end def showWithParen puts "( " + @string + " )" end def showWithAster puts "* " + @string + " *" end end class PrintBanner < Banner def initialize(string) super(string) end def print1 showWithParen end def print2 showWithAster end end # 継承を用いたAdapterパターン # print1 print2 インターフェイスで既存の # showWithParen showWithAsterを使用している p = PrintBanner.new("Hello") p.print1 p.print2