[Java] enum - 왜 안전한가, private 생성자로 강등되는 이유
·
Java
enum이란enum은 상수(변하지 않는 고정된 값)의 집합을 표현하는 열거형 클래스다.상수를 단순히 `public static final int`로 정의하지 않고 enum으로 정의하면, 컴파일러가 여러 안전장치를 자동으로 끼워준다.그 안전장치들이 어떻게 만들어지는지, 왜 enum이 "싱글톤처럼 동작한다"고 불리는지 정리해봤다.enum은 왜 안전한가1. 타입 체크 가능상수를 int나 String으로 관리하면, 메서드 파라미터로 정해진 상수 외의 다른 값이 넘어와도 컴파일러가 막지 못해 런타임에 가서야 터진다.반면 반면 enum은 타입 자체가 정해져 있어 잘못된 값이 넘어오는 순간 컴파일 에러로 막힌다.enum Status { WAITING, PROCESSING, DONE}void process(Sta..