Inheritance vs Composition
List to Array - Array to List conversion
List to Array -> list_reference.toArray(array_reference)
Array to List -> Arrays.asList();
for List to Array, list_reference.toArray() will result in object array to be created
The array and list object becomes joined at the heap, so update in one object updates another. So we cannot add any new element (as array is fixed size), but we can set the values
SOLID
S -> Single Responsibility Principle O -> Open/Close Principle L -> Liskov Substitution Principle I -> Interface Seggregation D -> Dependency Inversion