SOLID Java SOLID states for five design principles that help a developer build easy to extend and maintain software:
S – Single-responsibility principle
O – Open-closed principle
L – Liskov substitution principle
I – Interface segregation principle
D – Dependency Inversion Principle
In this post I’m not going to explain what’s hidden behind it though, it’s been already done in dozens of articles all over the web!
Source: SOLID Java – Filippo Buletto