Enum Class 이야기 enum 은 C언어에도 존재할 만큼, 범용성이 뛰어난 녀석이다. 코틀린에도 당연하게 enum 클래스가 존재한다. 이를 활용해서 아래와 같은 동작을 구현할 수 있었다. getColorName() 을 통해서 when 문을 통해 enum 객체 각각에 대한 분기 동작을 정의해줄 수 있었다. 위 예제는 각 색상의 RGB 값을 기반으로 enum 클래스를 만들고, when 을 통해 각각의 한글 이름을 출력하는 동작을 구현해본 것이다. 그런데 갑자기 RGB 값이 조금 수정되어야 하는 상황이 발생할 수 있다. 갑자기 클라이언트가 색상들이 조금 쿨톤을 띠었으면 좋겠다고 한다. 따라서 enum 객체들 각각에 B (Blue) 값을 20씩 추가하려고 한다. >그러나 enum 클래스의 각 상수들은 싱글톤 디자인 패턴을 따르기 때문에, 단 하나의 인스턴스만 존재하게 된다. 따라