// Injecting the dependency into a single method, for use by that method. // Could have injected the dependency in constructor itself which is more common, but the requirement mentions a chip installation method public void installChip(IChip pluggedChip) { this.chip = pluggedChip; Console.WriteLine("\nInstalling Chip: " + pluggedChip.GetType().Name); InstalledChips.Add(pluggedChip.GetType()); TotalUniqueChipsIntalled = InstalledChips.Count; }