September 2019
Intermediate to advanced
816 pages
18h 47m
English
Java best practices encourage us to bind the code to the abstraction. In other words, we need to rely on the programming to the interface technique.
This technique fits very well for collection declarations. For example, it is advisable to declare ArrayList as follows:
List<String> players = new ArrayList<>();
We should also avoid something like this:
ArrayList<String> players = new ArrayList<>();
By following the first example, the code instantiates the ArrayList class (or HashSet, HashMap, and so on), but declares a variable of the List type (or Set, Map, and so on). Since List, Set, Map, and many more are interfaces (or contracts), it is very easy to replace the instantiation ...