そんな訳で、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();
}
}