제네릭 클래스 사용의 장점

    제네릭 클래스를 사용할 때 얻는 장점을 다음 단계별 코드로 살펴보겠습니다. 프로젝트 기반 소스는 GenericPros.cs 파일입니다.

     

    1.   먼저 제네릭 클래스가 아닌 Stack 클래스를 사용해 보겠습니다. Stack 클래스는 System.Collections 네임스페이스에 있는 오래된 클래스입니다.

    > //① 제네릭 사용 전
    > using System.Collections;
    > Stack stack = new Stack();
    > stack.Push(3840);
    > int width = (int)stack.Pop(); //Convert 필요
    > width
    3840

    일반 클래스를 사용하면 Push() 메서드에 object로 값을 받고 Pop() 메서드에서도 object로 반환하기에 (int) 코드를 붙이는 것과 같은 형식 변환이 필요합니다.

    2.   Stack<T> 클래스는 제네릭 클래스로 System.Collections.Generic 네임스페이스에 있습니다.

    > //② 제네릭 사용 후
    > using System.Collections.Generic;
    > Stack<int> stack = new Stack<int>();
    > stack.Push(2160);
    > int height = stack.Pop(); //Convert 필요 없음
    > height
    2160

    제네릭 클래스를 사용하면 Stack<T> 클래스에 지정된 Stack<int> 형태로 int 형식의 데이터만 받고, Pop() 메서드에서도 int 형식으로 반환하기에 따로 형식 변환이 필요 없습니다.

    신간 소식 구독하기
    뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.