[ 1. Generic(제너릭) - 기본 개념 ]
1. 기본 Generic
- 어떤 자료형이 들어갈지 정의하는 것
- 어떤 자료형이 들어 갈지 명시적으로 정의하고, get, set시 자료형을 제한할 수도 있다.
2. 기본 Generic 사용예
1. Generic 미 지정 시 : 매번 Casting을 해야 되므로 성능에 않좋다.
2. <String>이라는 Generic 지정 시 : 요소를 찾아올 때 Casting이 필요 없어 프로그램 성능이 향상 된다.
10. Generic Type 정의
- 제네릭 타입은 타입을 파라미터로 가지는 클래스와 인터페이스를 말한다.
- 여러 형식에 맞게 재사용할 수 있는 코드를 정의하는 기술이다.
- Generic 코드를 정의 할 때는 가상의 형식 이름을 <가상형식이름>처럼 정의하고 사용하는 곳에서 어떠한 형식에 관한 코드를 사용할 것인지 명시하여 사용하는 기법이다.
- 그래서 클래스 내부에서 사용할 데이터 타입을 미리 정의하지 않고
외부Class에서 사용시점에 지정하는 기법을 의미한다.
11. Generic Type 종류
- E : Element
- K : Key
- V : Value
- N : Number
- T : Type
- S, U, V etc - 2nd, 3rd, 4th types
12. Generic Type 와일드카드
- 정의 : 와일드카드는 알 수 없는 자료형일 때 작성하는 Generic type이다.
- <?> : 모든 객체 자료형, 내부적으론 Object로 인식 한다.
- <? super [자료형]> : 명시한 자료형의 상위 객체를 의미한다.
내부적으론 Object로 인식한다.
- <? extends [자료형]> : 명시한 자료형을 상속한 하위 객체를 의미한다.
내부적으론 명시한 자료형으로 인식한다.
11. Generic Type 사용예
[ Person.java ]
class Person<T>{ //Generic Type에 T 를 기술하여 데이터 타입을 지정하지 않는다.
public T info;
}
[ User.java ]
....
Person<String> p1 = new Persion<String>(); //instance화 할때 생성자에 데이터 타입 지정
Person<StringBuilder> p2 = new Person<StringBuilder>(); //instance화 할때 생성자에 데이터 타입 지정
'자바(Pattern&자료구조) > Generic' 카테고리의 다른 글
4. Generic (제너릭) 제한된 타입 파라미터 & 와일드 카드 타입 (0) | 2017.03.15 |
---|---|
3. Generic (제너릭) 메소드 - 사용예문1 (0) | 2017.03.15 |
2. Generic (제너릭) 멀티 타입 파라미터 (0) | 2017.03.15 |
2. Generic (제너릭) Type - 사용예문2 (0) | 2017.03.15 |
2. Generic (제너릭) Type - 사용예문1 (0) | 2017.03.15 |