Middle
Кои обекти познавате в Kotlin и как се компилират?
sobes.tech AI
Отговор от AI
- Класове за данни: автоматично генерират
equals(),hashCode(),toString(),copy()и други полезни методи. Компилират се в обикновени класове с презаписани методи. - Енумите: представляват фиксиран набор от константи. Компилират се в класове със статични полета за всеки елемент.
- Затворени класове: позволяват да се дефинира ограничена йерархия от класове. Компилират се в обикновени класове с частен конструктор и статични екземпляри за всеки подклас в същия файл.
- Обекти: Singleton обекти. Компилират се в клас с статично поле за екземпляр и статичен инициализатор.
Пример за Object в Kotlin:
object MySingleton {
fun doSomething() {
// Някаква логика
}
}
Компилация в Java:
public final class MySingleton {
public static final MySingleton INSTANCE;
private MySingleton() {
}
public final void doSomething() {
// Някаква логика
}
static {
INSTANCE = new MySingleton();
}
}