자바 제네릭스는 무엇이고 어떻게 동작하는가? 제네릭스란? 다양한 타입의 객체들을 다루는 메서드나 컬렉션 클래스에서 사용되는 것으로, 컴파일 시 타입을 체크해주는 것이다. 객체의 타입을 컴파일 시 체크하기 때문에 객체 타입의 안정성을 높이고 형변환의 번거로움을 줄일 수 있다. 타입 안정성을 높인다는 것은 의도하지 않은 타입의 객체를 저장하는 것을 막고, 저장된 객체를 꺼낼 때에도 원래의 타입과 다른 타입으로 형변환 되는 오류를 줄인다는 것이다. 예를 들어 String형만 저장하고 싶을 때, 제네릭스를 사용하면 다른 형을 입력받지 못하게 하여 타입 안정성을 제공하는 것이다. 참고로 타입 안정성과 하위 호환을 위해 컴파일 타임에만 이용되고 런타임 때는 사라진다. ArrayList strings = new Ar..