ABOUT ME

코딩 복습하고 공부하는 기록

Today
Yesterday
Total
  • 지네릭스 용어, 지네릭 타입과 다형성
    공부/Java 2024. 4. 20. 19:18

    지네릭스 용어, 지네릭 타입과 다형성

     

    지네릭스 용어

    Box<T>     지네릭 클래스, 'T의 Box' 또는 'T Box'라고 읽는다.
    T               타입 변수 또는 타입 매개변수 (T는 타입 문자)
    Box           일반 클래스, 원시 타입 (raw type)

     

     

    지네릭 타입과 다형성

     

    아래 예제들은 다음과 같은 관계의 클래스를 갖고 있다고 하자.

    class Product{}
    class Tv extends Product{}
    class Audio extends Product{}

     

    - 참조 변수와 생성자의 대입된 타입은 일치해야 한다.

    ArrayList<Tv> list = new ArrayList<Tv>();		// 정상작동
    ArrayList<Product> list = new ArrayList<Tv>();		// 에러 (불일치)

     

    - 지네릭 클래스 간의 다형성은 성립한다.

    ※ 여전히 대입된 타입은 일치해야 한다.

    List<Tv> list = new ArrayList<Tv>();		// 정상작동. ArrayList가 List를 구현
    List<Tv> list = new LinkedList<Tv>();		// 정상작동. LinkedList가 List를 구현

     

    - 매개변수의 다형성도 성립된다.

    ArrayList<Product> list = new ArrayList<Product>();
    list.add(new Product());
    list.add(new Tv());
    list.add(new Audio());

     

    '공부 > Java' 카테고리의 다른 글

    HashMap과 지네릭스  (0) 2024.04.23
    Iterator<E>  (0) 2024.04.22
    타입 변수  (0) 2024.04.19
    지네릭스(Generics)  (0) 2024.04.19
    Collections 클래스  (0) 2024.04.18
Designed by Tistory.