들어가기 전에
제한된 기능을 사용하기 위해서 무언가를 봉인할 수 있습니다. 열거형은 무언가를 나열할 때 좋은 역할을 하죠.
핵심 키워드
- 실드 클래스(sealed class)
- 열거형 클래스(enum class)
학습하기
들어가기 전에
제한된 기능을 사용하기 위해서 무언가를 봉인할 수 있습니다. 열거형은 무언가를 나열할 때 좋은 역할을 하죠.
핵심 키워드
학습하기
실드 클래스
실드 클래스를 선언하려면 sealed 키워드를 class와 함께 사용합니다. 실드 클래스 그 자체로는 추상 클래스와 같기 때문에 객체를 만들 수는 없습니다. 또한 생성자도 기본적으로는 private이며 private이 아닌 생성자는 허용하지 않습니다. 실드 클래스는 같은 파일 안에서는 상속이 가능하지만, 다른 파일에서는 상속이 불가능하게 제한됩니다. 블록 안에 선언되는 클래스는 상속이 필요한 경우 open 키워드로 선언될 수 있습니다.
sealed class Result {
open class Success(val message: String): Result()
class Error(val code: Int, val message: String): Result()
}
열거형 클래스
열거형 클래스란 여러 개의 상수를 선언하고 열거된 값을 조건에 따라 선택할 수 있는 특수한 클래스 입니다. 열거형 클래스는 실드 클래스와 거의 비슷합니다. 다만 열거형 클래스는 실드 클래스처럼 다양한 자료형을 다루지 못합니다.
enum class Direction {
NORTH, SOUTH, WEST, EAST
}
http://www.yes24.com
comment