Abstract Class and Interface
Abstract classes can have concrete methods while interfaces have no methods implemented. Interfaces do not come in inheriting chain, while abstract classes come in inheritance
The key difference when you are developing and writing, is who you are writing for. The code you write is generally for yourself to reuse as and when need be. When you write, you write for an audience who will use your content and develop on them. This is my tryst to put down my learnings for others to use. And while doing so, refine those learnings making it beginner friendly.