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...