そんな訳で、Fooの生成をファクリトリに任せるのが王道。これでMainはFooFactoryとFooインタフェースにのみ依存します。
そんな訳で、Fooの生成をファクリトリに任せるのが王道。これでMainはFooFactoryとFooインタフェースにのみ依存します。
public class Main {public static void main(String[] args) {Foo foo = FooFactory.createFoo(); // Fooの生成はファクトリに任せるfoo.foo();foo.bar();foo.baz();}}