Котлин - Какая польза от занятий без тела?

В Kotlin заголовок и тело не обязательны; если у класса нет тела, фигурные скобки могут быть опущены.

Таким образом, мы можем определить класс, как,

class Empty

Какая польза от этого типа занятий?

2 ответа

Решение

Вы можете использовать его для некоторых пользовательских исключений:

class Empty : Exception()

или как интерфейс маркера:

interface Empty

или как класс данных:

data class Empty(val s: String)

или как маркерная аннотация:

annotation class Empty

~ Это хороший пост для чтения.

Kotlin позволяет объявлять любой тип без тела, например:

interface Interface;

class Class;

annotation class Annotation;

sealed class SealedClass;

data class DataClass(var value: String);

object ObjectClass;

enum class EnumClass;

class CompanionClass {
    companion object
}

использование каждого определения может быть описано как ниже:

  • интерфейс - как маркерный интерфейс.
  • аннотация - опишите аннотированный тип, обладающий некоторой способностью. например: junit4 @Before а также @After аннотаций.
  • объект - он часто представлен в виде токена или замка или заполнителя и т. д. например: synchronized(lock){ /*thread safe working*/ }
  • класс данных - быстро определить класс Java POJO с getters, setters?, equals, hashCode, toString а также componentN операторы по деструктуризации в котлин.
  • другие - они бессмысленны, просто есть синтаксис языка.
Другие вопросы по тегам