そのためのメソッドがItem#calculateRentalFee()で、これは各サブクラス(CDとDVD)でそれぞれオーバーライドされます。}いくらか「よい感じ」になってきた気がしますが、まだCDクラスとDVDクラスでオーバーライドされたそれぞれのcalculateRentalFee()メソッドの中にswitch文が残ってしまっています。中途半端な感じですね。そこで「ダブル・ディスパッチ」です。