아래와 같은 sealed interface
혹은 sealed class
가 있다고 했을때,
sealed interface ProfileScreenState {
data class Success(val username: String): ProfileScreenState
object Error: ProfileScreenState
object Loading: ProfileScreenState
}
각 하위 클래스들을 toString()
으로 찍어보면 아래와 같이 찍힌다.
com.dataobjects.example.ProfileScreenState$Loading@6d03e736 //object는 메모리 주소가 찍힘
Success(username=exampleUser1) //data class 는 이름이 잘 찍힘
com.dataobjects.example.ProfileScreenState$Error@5fd0d5ae