Sobes.tech
Junior — Middle

Mi a célja az enum class használatának Kotlinban, és miben különbözik a szokásos felsorolásoktól?

sobes.tech MI

Válasz az MI-től

Kotlinban az enum class használható egy korlátozott halmaz konstansainak meghatározására, amelyek mindegyike az osztály objektuma. Más nyelvekben a szokásos felsorolásokkal ellentétben a Kotlin enum osztályok tulajdonságokat, metódusokat tartalmazhatnak és interfészeket valósíthatnak meg.

Fő különbségek:

  • Minden konstans az enum osztály példánya, egyedi tulajdonságokkal és viselkedéssel.
  • Konstruktorokat és metódusokat lehet hozzáadni.
  • Támogatja az interfészek öröklését.

Példa:

enum class Direction(val degrees: Int) {
    NORTH(0),
    EAST(90),
    SOUTH(180),
    WEST(270);

    fun description() = "Irány $name, szög $degrees fok"
}

fun main() {
    println(Direction.NORTH.description()) // Irány NORTH, szög 0 fok
}

Így a Kotlin enum osztály egy erőteljes eszköz a kapcsolódó konstansok halmazával való munkához, kiegészítő logikával.