출처: 자바의정석(http://www.kyobobook.co.kr/product/detailViewKor.laf?ejkGb=KOR&mallGb=KOR&barcode=9788994492032&orderClick=LAG&Kc=)

 

1.1 지네릭스란?

 지네릭스는 다양한 타입의 객체들을 다루는 메서드나 컬렉션 클래스에 컴파일 시의 타입체크를 해주는 기능이다.

객체의 타입을 컴파일 시에 체크하기 때문에 객체의 타입 안정성을 높이고 형변환의 번거로움이 줄어든다.

타입 안정성을 높여준다는 것은 의도하지 않은 타입의 객체가 저장되는 것을 막고, 저장된 객체를 꺼내올 때 원래의 타입과 다른 타입으로 잘못 형변환되어 발생할 수 있는 오류를 줄여준 다는 뜻이다.

 예를 들어, ArrayList와 같은 컬렉션 클래스는 다양한 종류의 객체를 담을 수 있기는 하지만 보통 한 종류의 객체를 담는 경우가 더 많다.

그런데도 꺼낼 때 마다 타입체크를 하고 형변환을 하는 것은 아무래도 좀 불편할 수 밖에 없다. 게다가 원하지 않는 종류의 객체가 포함되는 방법이 없다는 것도 문제이다. 이러한 문제들을 지네릭스가 해결해 준다.

지네릭스의 장점
 1. 타입 안정성을 제공한다.
 2. 타입체크와 형변환을 생략할 수 있으므로 코드가 간결해 진다.

간단히 얘기하면 다룰 객체의 타입을 미리 명시해줌으로써 번거로운 형변환을 줄여준다는 얘기다.

+ Recent posts