Dependency Injection

Dependency Injection Robo

(auf Whish bestellt)

Injection

  • der Robo weiß, dass er einen Arm hat
  • er kennt die Schnittstelle zu seinem Arm
  • der Arm wird in einer Robo Fabrik angeschraubt
  • wir sprechen hier von "Injection"

Robo Code

        public class Robo {
  private Arm arm;

  public Robo(Arm arm) {
    this.arm = arm;
  }

  public arbeite() {
    this.arm.arbeite();
  }
}
        
      

Robo Fabrik Code

        public class RoboFabrik {
  public static void main(String[] args) {
    Arm arm = new BohrerArm();
    Robo robo = new Robo(arm);
    robo.arbeite();
  }
}
        
      

Zusammengefasst

Abhängigkeiten werden nicht vom Objekt selbst erzeugt, sondern von einem anderen Objekt bei der initialisierung hinein gegeben.