목차

  1. 제네릭(Generics) 이란?
    1. 제네릭을 사용하는 이유 
    2. 기본 예제
  2. 제네릭 용어
  3. 객체 생성 방법
  4. 제네릭 타입과 다형성
    1. 참조변수와 생성자의 타입 변수는 일치해야 함
    2. 제네릭 클래스 간의 다형성은 성립됨 (타입 변수는 일치해야 함)
    3. 매개 변수의 다형성도 성립됨
  5. 심화 예제 

 

 

1. 제네릭(Generics) 이란?

  • 데이터 형식에 의존하지 않고, 하나의 값이 여러 다른 데이터 타입들을 가질 수 있도록 하는 방법
  • <> 괄호 안에 타입을 넣어 객체(Object)에 사용하려는 타입을 외부에서 지정하는 것

 

 

 

1) 제네릭(Generics) 을 사용하는 이유

  1. 컴파일 시 타입 에러 방지 : 컴파일러는 코드에서 발생하는 Runtime에러를 Compile에러로 가져오기 위해서
    • runtime 에러 : console 창이 터져서 프로그램 실행 안됨
    • complie 에러 : 컴파일 시 타입 에러를 미리 확인 가능
  2. 형변환 생략 : 제네릭은 컴파일러에 의해 자동으로 타입이 변화되므로 불필요한 형변환 생략 가능

 

 

 

2) 기본 예제

 

 

 

 

 

2. 제네릭(Generics) 용어

  • ArrayList<Object> : 제네릭 클래스
  • ArrayList : 원시타입(raw type), 일반 클래스의 타입, 참조 변수
  • <Object> : 타입 변수 Object 선언
  • Object : 타입 변수, 타입 매개변수

 

 

 

 

3. 제네릭(Generics) 생성 방법

  • 참조 변수의 타입변수가 생성자의 타입 변수와 일치해야 함 (생성자의 타입 변수는 생략가능)

 

 

 

4. 제네릭(Generics) 타입과 다형성

1) 참조변수와 생성자의 타입 변수는 일치해야 함

 

 

 

2) 제네릭 클래스 간의 다형성은 성립됨 (타입 변수는 일치해야 함)

 

 

 

3) 매개 변수의 다형성도 성립됨

 

 

 

 

5. 심화 예제

 

 

+ Recent posts