Sobes.tech
Middle

Welche Objekte kennen Sie in Kotlin und wie werden sie kompiliert?

sobes.tech KI

Antwort von AI

  • Datenklassen: generieren automatisch equals(), hashCode(), toString(), copy() und andere nützliche Methoden. Sie werden in normale Klassen mit überschriebenen Methoden kompiliert.
  • Enums: stellen eine feste Menge von Konstanten dar. Sie werden in Klassen mit statischen Feldern für jedes Element kompiliert.
  • Versiegelte Klassen: erlauben die Definition einer eingeschränkten Klassenhierarchie. Sie werden in normale Klassen mit einem privaten Konstruktor und statischen Instanzen für jede Unterklasse im selben Datei kompiliert.
  • Objekte: Singleton-Objekte. Sie werden in eine Klasse mit einem statischen Instanzfeld und einem statischen Initialisierer kompiliert.

Beispiel Object in Kotlin:

object MySingleton {
    fun doSomething() {
        // Logik
    }
}

Kompilierung in Java:

public final class MySingleton {
    public static final MySingleton INSTANCE;

    private MySingleton() {
    }

    public final void doSomething() {
        // Logik
    }

    static {
        INSTANCE = new MySingleton();
    }
}