moin,
schön und verständlich erklärt. Ich weis DependencyInjection bereits. Sorry wenn ich es so nicht rüber gebracht habe. Ich würde allerding so es so machen:
new M( new F );
so hat man sich schreibarbeit erspart. Sicherlich gibt es Situationen in denen dein Anwendungsbeispiel geeigneter ist. Nichts für ungut.
lgmb