제네릭(Generic)이란 자바에서 제공하는 클래스와 메서드를 정의할 때, 타입 파라미터(Type Parameter)를 사용하여 클래스 또는 메서드 내부에서 사용할 데이터 타입을 미리 지정하지 않고, 사용하는 시점에 구체적인 데이터 타입을 지정할 수 있는 기능입니다.
제네릭을 사용하는 가장 큰 이유 중 하나는, 컴파일 시점에서 타입 체크를 수행하므로, 타입 안전성을 보장할 수 있다는 것입니다. 제네릭을 사용하면 코드 중복을 줄이고, 유지보수성을 높일 수 있습니다. 또한 제네릭 클래스나 메서드를 사용하면, 다양한 타입의 데이터를 다루는 코드를 작성할 수 있습니다.
컬렉션 클래스에서 제네릭을 사용하는 이유는, 다양한 타입의 데이터를 저장하고 관리하기 위해서입니다. 예를 들어, ArrayList 클래스는 배열을 이용하여 데이터를 저장하며, Object 타입으로 모든 데이터를 다룰 수 있습니다. 그러나 이렇게 Object 타입으로 데이터를 다루면, 런타임 시점에서 데이터 타입을 체크하기 어렵기 때문에, 데이터 타입이 일치하지 않을 경우에는 런타임 에러가 발생할 수 있습니다. 따라서, 제네릭을 사용하여 ArrayList 클래스를 정의하면, 데이터 타입이 일치하는지 컴파일 시점에서 체크할 수 있으며, 코드의 안정성을 높일 수 있습니다.
즉, 제네릭을 사용하면 컴파일 시점에서 타입 안전성을 보장할 수 있으며, 다양한 타입의 데이터를 다룰 수 있는 유연한 코드를 작성할 수 있습니다. 컬렉션 클래스에서 제네릭을 사용하면, 데이터 타입을 명확하게 지정할 수 있으며, 코드의 안정성과 유지보수성을 높일 수 있습니다.
'개발일지' 카테고리의 다른 글
Parameter와 Argument의 차이 (0) | 2023.03.30 |
---|---|
List, Set, Map, HashMap의 차이 (0) | 2023.03.30 |
MSA(Microservice Architecture)란? (0) | 2023.03.29 |
DB에서의 인덱스 활용 장점 (0) | 2023.03.28 |
DI(Dependency Injection)란 (0) | 2023.03.28 |