Объявление объекта, специфичного для типа Kotlin

#kotlin #jvm

#kotlin #jvm

Вопрос:

Я хочу создать класс, который может быть объявлен с помощью операции определенного типа. Вот так (я не знаю, как это называется):

 val div: Division = Division<Indonesia>("Division number 17th")
val div1 = Division<Palestine>("Division number 15")
 

Вот еще один код:

 class Division(name: String) {
  // secret...
}
 

Как я могу делать такие вещи, как это:

 Division<Indonesia>("How?")
 

Ответ №1:

Вы говорите о дженериках. Вот документы Java, охватывающие основы, вот материал, специфичный для Kotlin. Вы присваиваете классу общий тип, подобный этому:

 class Division<T>(name: String)
 

Это самый простой пример… но я думаю, вам нужно прочитать руководство по обобщениям, которое я связал