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.