제네릭(Generic) - 1
제네릭(Generic) - 1
제네릭이란
자바에서 제네릭(Generics)은 클래스 내부에서 사용할 데이터 타입을 미리 지정하는 사용법이다.
우리가 자주 쓰고 있는 자료형인 리스트(List)를 보면 클래스 선언 문법에 <>괄호로 되어있는 코드 형인데 바로 이 괄호가 제네릭이다.
1
ArrayList<String> list = new ArrayList<>();
제네릭 기호 및 예시
밑의 대중적으로 쓰고 있는 표가 있지만 문법적으로 정해진 것이 없다.
그래도 for문을 이용할때 변수를 i 로 선언하듯이, 제네릭의 표현 변수를 T 로 선언하는 것이라 보면 된다. 만일 두번째, 세번째 제네릭까지 있다면 임의로 S, U 로 이어나가면 된다.
자신이 넣고 싶은 아무 단어로 넣어도 상관은 없지만, 대중적으로 통하는 통상적인 이름이 개발에 편하기에 암묵적인 규칙이 존재한다고 보면 된다.
- 제네릭(Generic) 사용 기호표
| 타입 | 설명 |
|---|---|
| < T > | Type |
| < E > | Element |
| < K > | Key |
| < V > | Value |
| < N > | Number |
| <S, U, V> | 2번째, 3번째, 4번째에 선언된 타입 |
- 클래스 및 인터페이스 선언 예시
1
2
3
4
5
6
public class ClassTest <T> { }
public interface InterfaceTest <T> { }
public class HashMap<K,V> extends AbstractMap<K,V> implements Map<K,V> // 다중 제네릭 타입 쓴 예시 Hashmap 클래스
This post is licensed under CC BY 4.0 by the author.