Java - Generic


제네릭 (Generic) ?

  • 클래스 내부가 아닌, List<?> 이렇게 <> 을 통하여 외부로부터 타입을 지정하는 문법
      class Apple {}
      class Banana {}
    
      class FruitBox<T, U> {
          List<T> apples = new ArrayList<>();
          List<U> bananas = new ArrayList<>();
    
          public void add(T apple, U banana) {
              apples.add(apple);
              bananas.add(banana);
          }
      }
    
      public class Main {
          public static void main(String[] args) {
              // 복수 제네릭 타입
              FruitBox<Apple, Banana> box = new FruitBox<>();
              box.add(new Apple(), new Banana());
              box.add(new Apple(), new Banana());
          }
      }
    



제네릭 장점 ?

  • 제네릭을 사용하면 잘못된 타입이 들어올 수 있는 것을 컴파일 단계에서 방지할 수 있다.
  • 클래스 외부에서 타입을 지정해주기 때문에 따로 타입을 체크하고 변환해줄 필요가 없다. 즉, 관리하기가 편하다.
  • 비슷한 기능을 지원하는 경우 코드의 재사용성이 높아진다.






results matching ""

    No results matching ""