/* Generic class
    E is a parameterized type, a placeholder for a concrete type
    All instances of E are replaced by a concrete type during compilation of the class
        using this class in a process called erasure.
*/

class Container<E> {
	E i = null;

	Container(E i) {
		this.i = i;
	}

	E getElement() {
		return i;
	}
}
