0Pricing
Kotlin Multiplatform Academy · Aula

Enums e classes seladas para estados

Modele opções fixas e variantes de resultado com segurança

Enums e classes seladas para estados é uma aula grátis de Kotlin Multiplatform Academy no CoddyKit. Esta é a aula 2 de 4. Você pode ler a aula completa abaixo gratuitamente — depois pratica ao vivo no navegador com um editor de código integrado e um tutor de IA 24/7. Faz parte do caminho de aprendizado de Kotlin Multiplatform Academy, e seu progresso é sincronizado entre a web e o app CoddyKit. O curso de Kotlin Multiplatform Academy inclui 4 aulas no total.

Partes desta aula ainda não foram traduzidas e aparecem em inglês.

Model Fixed Choices

Some values have a known, limited set of options. Kotlin gives you enums and sealed classes to model them safely in shared code.

Meet the enum class

An enum class lists every allowed value by name. Nothing outside that list can ever sneak in.

enum class Status { ACTIVE, PAUSED, DONE }

Use an enum Value

Refer to an option by its name. Because the set is closed, your state is always one of the listed cases.

val current = Status.ACTIVE

Enums Can Carry Data

Give an enum constructor properties so each case can hold extra fixed info, like a label or numeric code.

enum class Plan(val price: Int) { FREE(0), PRO(9) }

When Cases Need Different Data

Enums share one shape. When variants need different fields, reach for a sealed class instead.

Meet the sealed class

A sealed class defines a closed family of subtypes. Each subtype can carry its own distinct data.

sealed class Result
data class Ok(val value: String) : Result()
data class Err(val message: String) : Result()

Why Sealed Is Powerful

Because the compiler knows every subtype, a sealed class models success, loading and error states with type-safe payloads.

val state: Result = Ok("loaded")

Match with when

Handle each case using when. The compiler checks you covered every variant of the sealed type.

when (state) {
  is Ok -> println(state.value)
  is Err -> println(state.message)
}

Exhaustive when, No else

When you handle all sealed cases, you can drop the else branch. Add a new subtype later and the compiler reminds you.

Shared, So Both Apps Agree

Defined in commonMain, these state types drive identical logic on Android and iOS with zero drift.

Pick the Right Tool

Use an enum for simple fixed options, and a sealed class when each case carries different data.

Quick Check

Which type should model these states?

Recap

Use shared enums for fixed options and sealed classes for variants with their own data, then match them safely with when.

Perguntas Frequentes

A aula “Enums e classes seladas para estados” é grátis?

Sim — o texto completo de “Enums e classes seladas para estados” é grátis para ler aqui na web. Para praticá-la interativamente (um editor de código integrado e um tutor de IA 24/7) e desbloquear o restante do curso de Kotlin Multiplatform Academy, atualize para CoddyKit PRO. O curso de Kotlin Multiplatform Academy inclui 4 aulas no total.

O que vou aprender em “Enums e classes seladas para estados”?

Modele opções fixas e variantes de resultado com segurança Você pratica Kotlin Multiplatform Academy com código prático que executa diretamente no navegador, e um tutor de IA 24/7 responde suas dúvidas enquanto trabalha na aula.

Preciso ter experiência prévia para começar Kotlin Multiplatform Academy?

Nenhuma experiência prévia é necessária. Kotlin Multiplatform Academy no CoddyKit é estruturado para alunos iniciantes até avançados, então você pode começar aqui ou desde o início e aprender no seu ritmo. Esta é a aula 2 de 4.

Quanto tempo leva a aula “Enums e classes seladas para estados”?

A maioria das aulas CoddyKit leva cerca de 5–10 minutos. Cada uma é compacta e interativa, então você faz progresso constante e retoma exatamente de onde parou entre web e app.

Posso escrever e executar código nesta aula de Kotlin Multiplatform Academy?

Sim. Cada aula de Kotlin Multiplatform Academy inclui um editor de código integrado, então você escreve e executa código real direto no navegador e recebe feedback de IA instantaneamente — nenhuma configuração local necessária.

Todas as aulas deste curso

  1. Classes de dados para seu domínio
  2. Enums e classes seladas para estados
  3. Segurança contra nulos em modelos compartilhados
  4. Auxiliares de validação nos seus modelos
← Voltar para Kotlin Multiplatform Academy