0 / 60 seg.

What does the following Java code demonstrate?

public class Inventory<T extends Item> {
    private List<T> items = new ArrayList<>();
    public void addItem(T item) {
        items.add(item);
    }
    public T getItem(int index) {
        return items.get(index);
    }
    public static void main(String[] args) {
        Inventory<Potion> potionInventory = new Inventory<>();
        potionInventory.addItem(new Potion());
        Potion potion = potionInventory.getItem(0);
        potion.drink();
    }
}