> もしかしてこの話ってポリモーフィズムが非常に深く関係してますか?

はい。

> >>80のprintName()メソッド内でf.getName()は実行できない・・・ですよね?

そうなります。

>一般的なのでしょうか?

だいたいは。

親クラスで標準的なデフォルト動作を実装しておき、そのままでも使えるが、サブクラスで特定目的にカスタマイズして機能を特化する、というようなものもありえます。

>院試まで@8日。

がんばってください。