https://tutorialscart.com/a-guide-to-understand-java-generics-with-examples/
A Guide to Understand Java Generics with Examples