Discuss the role of abstract classes and interfaces in SOLID principles.
You have a legacy system with many concrete classes . How would you introduce an abstraction layer using interfaces without modifying the existing code significantly?
Explain dependency injection and how interfaces facilitate it .
How do youunit test classesthat depend onabstract classes or interfaces?
Discuss the limitations of using interfaces. Expertise Level of Developer Required to Answer this Question
Discuss the limitations of using abstract classes .
Explain the concept of "is-a" and "has-a" relationships and how they relate to inheritance and interfaces.
Can you create an instance of an abstract class? Expertise Level: Mid Level
Can you have a protected abstract method? What does it imply?
When should you mark a method as abstract?
Explain the difference between abstract methods and virtual methods.
How would you implement a template method pattern using an abstract class in C?
How would you implement a strategy pattern using interfaces in C?
Design a class hierarchy for a zoo management system using abstract classes and interfaces.
Explain how abstract classes and interfaces contribute to code maintainability and extensibility.Mid-Senior Level
What are the performance implications of using abstract classes vs. interfaces ?
Can an interface be sealed? Why or why not? Expertise Level: Mid Level
Can an abstract class be sealed? Why or why not?
What is the purpose of the abstract keyword in C ? Mid Level
How do you handle versioning issues when adding new methods to an interface?
Can you have astatic methodin aninterface(pre-C8) and how is itdifferent in C8 and later?
Can you have a static method in an abstract class ?
What are the access modifiers allowed for methods in an abstract class?
What are theaccess modifiersallowed formethodsin aninterface?
Describe a real-world scenario where you would use an abstract class .

