열거형

  1. 열거형
    • 열거형은 미리 정의된 상수값을 만들기 위한 자료형
    • enum을 사용하여 정의
    • 열거형으로 선언된 변수에는 미리 지정된 값만 대입 가능
    • 상수값을 배열로 리턴하는 static 메소드로 values()를 제공
      Enum Day {
       SUNDAY, MONDAY, TUESDAY, THURDAY, FRIDAY, SATURDAY
      }
      
      Day day = Day.MONDAY;
      for (Day d : Day.values()){
       System.out.println(d);
      }
      
  2. 열거형의 생성자와 메소드
    • 상수 선언이 필드나 메소드보다 먼저 정의되어야 하며 세미콜론(;)으로 끝나야 함
    • 열거형 정의에 필드와 메소드를 포함할 수 있음
    • 생성자는 열거형과 같은 이름을 가지며 접근 제어자는 생략 또는 private이어야 함
    • 열거형에서 상수값은 마치 하나의 객체와 같음
    • 열거형의 생성자는 상수값을 설정(객체 생성)할 때 자동 호출됨

익명 클래스

  • 일회성으로 1개의 객체를 생성하기 위한 클래스. 클래스 정의와 동시에 객체를 생성할 수 있음
  • 슈퍼 클래스를 상속받거나 인터페이스를 구현하도록 익명 클래스를 정의함
  • new 슈퍼클래스(){ ... } // 슈퍼클래스의 자식 객체 생성
  • new 인터페이스(){ ... } // 인터페이스를 구현하는 자식 객체 생성
  • 중괄호가 익명클래스의 몸체

Updated: