Oto klasa Para – prosty przykład klasy generycznej:
public class Para <T> { private T pierwszy; private T drugi; public Para(T pierwszy, T drugi) { this.pierwszy = pierwszy; this.drugi = drugi; } public T getPierwszy() { return pierwszy; } public void setPierwszy(T pierwszy) { this.pierwszy = pierwszy; } public T getDrugi() { return drugi; } public void setDrugi(T drugi) { this.drugi = drugi; } }
A oto kawałek kodu, który z niej korzysta:
Para<Integer> para = new Para<Integer>(3, 5); para.setPierwszy(13); // ale na to kompilator nie pozwoli: //para.setPierwszy("tralala"); // pobierając element z listy nie muszę rzutować: int a = para.getPierwszy(); System.out.println(a);