[Java] 제네릭

우쓰·2023년 11월 14일
0

Java

목록 보기
7/10

📙Content

제네릭이란?

: 결정되지 않은 타입을 파라미터로 처리하고
실제 사용할 때 파라미터를 구체적인 타입으로 대체시키는 기능

내용물의 타입을 어떤 타입으로 제공할지 미리 알려주는 것으로
List, Map 과 같은 컬렉션 프레임워크를 예시로 볼 수 있다.

제네릭 타입

: 결정되지 않은 타입을 파라미터로 가지는 클래스와 인터페이스

  • 제네릭 타입은 <> 부호사이에 타입 파라미터가 위치한다.

  • 외부에서 사용할때 파라미터에 구체적인 타입을 지정해야하는데
    지정하지 않는다면 Object 타입이 사용된다.

와일드카드 타입 파라미터

: 제네릭 타입을 매개값 또는 리턴 타입으로 사용할 때 파라미터로 ?(와일드카드)를 사용할 수 있다.

리턴타입 메소드명(List<? extends Number> 변수) {
}

이 경우 Number 클래스와 Number 클래스의 하위 클래스를 요소로 가지는 리스트를 나타낸다.

리턴타입 메소드명(List<? super Integer> 변수) {
}

이 경우 Integer 클래스와 Integer클래스의 상위 클래스를 요소로 가지는 리스트를 나타낸다.

0개의 댓글