Das Fabrik-Muster

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);



Johannes Waldmann 2014-07-10