Johnson Controls Interview Question

Explain few design patterns, method extension, dependency injection etc.