Kotlin

[코틀린] 실드 클래스 (Sealed Class)

Sky Titan 2020. 9. 22. 20:48
728x90

실드 클래스 (Sealed Class)

  • 미리 만들어 놓은 자료형들을 묶어서 제공하는 클래스
  • 열거형 클래스와 유사하다.
  • 추상 클래스와 같기 때문에 객체를 만들 수 없다.
  • 기본 생성자는 private
  • 같은 파일 안에서만 상속 가능
//첫번째 선언방법
sealed class Data{
    
    class Human(var name : String, var age : Int)
    class Animal(var name : String, var age : Int)
}

//두번째 선언방법 -> 객체 생성 시 . 생략 가능
sealed class Data2
    class Human2(var name : String, var age : Int)
    class Animal2(var name : String, var age : Int)

fun main() {

    var human: Data.Human = Data.Human("Park", 10)
    var human2: Human2 = Human2("kim",10)
}

 

728x90