Generics
The generics feature was introduced into Java in version 5. To start with an example, our Sortable interface until now was this:
package packt.java9.by.example.ch03;
public interface SortableCollection {
Object get(int i);
int size();
}After introducing generics, it will be as follows:
package packt.java9.by.example.ch03;
public interface SortableCollection<E> {
E get(int i);
int size();
}The E identifier denotes a type. It can be any type. It says that a class is a sortable collection if it implements the interface, namely the two methods— size and get. The get method should return something that is of type E, whatever E is. This may not make too much sense up until now, but you will soon get the point. After all, generics is a difficult topic.
The Sort interface will become the following:
package packt.java9.by.example.ch03;
import java.util.Comparator;
public interface Sort<E> {
void sort(SortableCollection<E> collection);
void...