Котлин - Какая польза от занятий без тела?
В 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
операторы по деструктуризации в котлин. - другие - они бессмысленны, просто есть синтаксис языка.