interface I { } class A implements I { A (int x) { .. } } class B implements I { B (int x) { .. } }die Gemeinsamkeit der Konstruktoren kann nicht in
I
ausgedrückt werden.
interface F // abstrakte Fabrik { I construct (int x); } class FA implements F // konkrete Fabrik { I construct (int x) { return new A(x); } } class FB implements F { .. } main () { F f = Eingabe ? new FA() : new FB(); I o1=f.construct(3); I o2=f.construct(4);