더북(TheBook)

그렇다면 열거형은 무엇을 위한 것일까? 클래스를 이용하면 안 될까? 어떤 값을 담기 위한 또 다른 클래스가 있다고 가정해 보자.

class ImageWidths {
    public const int Small = 50;
    public const int Medium = 100;
    public const int Large = 200;
}

다음 코드를 컴파일하면 true를 반환한다는 것이 중요하다.

return HttpStatusCode.OK == ImageWidths.Large;

이건 우리가 원하는 것이 아니다. 대신 이것을 열거형으로 작성하면 다음과 같다.

enum HttpStatusCode {
    OK = 200,
    NotFound = 404,
    ServerError = 500,
}
신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.