Size: a a a

Kotlin Community

2020 March 28

ℕo ℕame in Kotlin Community
val obj: Obj = Obj.create() - при обращение к этому атрибуту работаешь с конкретным экземпляром obj
val obj: Obj
   get() = Obj.create() - каждый раз создается новый экземпляр
?
источник

AN

Alexander Nozik in Kotlin Community
ℕo ℕame
val obj: Obj = Obj.create() - при обращение к этому атрибуту работаешь с конкретным экземпляром obj
val obj: Obj
   get() = Obj.create() - каждый раз создается новый экземпляр
?
да
источник

QH

Quantum Harmonizer in Kotlin Community
ℕo ℕame
val obj: Obj = Obj.create() - при обращение к этому атрибуту работаешь с конкретным экземпляром obj
val obj: Obj
   get() = Obj.create() - каждый раз создается новый экземпляр
?
как раз пять сообщений назад кинули ссылку: @kotlin_start
источник

AN

Alexander Nozik in Kotlin Community
геттер - это просто функция, которая на каждое обращение вызывается
источник

CL

Constantine Linnick in Kotlin Community
Quantum Harmonizer
В обоих случаях с типами всё плохо.
В первом у функции есть собственный типовой параметр, про который функция ничего не знает. Ты её produce<SomeEntertainment>(), а она тебе какой-то Entertainment.
Во втором можно унаследовать класс, передав произвольный T: class E : Entertainer1<SomeEnterrainment>(), а метод не переопределить, и тогда см. пункт «во-первых».
вот тут накидал пасту https://pastebin.com/kvNppCZS
источник

CL

Constantine Linnick in Kotlin Community
я вообще не вижу разницы с проекциями и без проекций. Как я понимаю они должны разрешать присваивание подтипа если мы гарантируем только чтение/только запись
источник

QH

Quantum Harmonizer in Kotlin Community
Constantine Linnick
я вообще не вижу разницы с проекциями и без проекций. Как я понимаю они должны разрешать присваивание подтипа если мы гарантируем только чтение/только запись
Я и не считаю, что тут нужны проекции. Тут надо бы задачу для начала поставить)
источник

CL

Constantine Linnick in Kotlin Community
продемонстрировать сценарий когда без проекций ошибка, а с проекциями нет
источник

QH

Quantum Harmonizer in Kotlin Community
Constantine Linnick
продемонстрировать сценарий когда без проекций ошибка, а с проекциями нет
пожалуйста:
class Box</*out */T>(val value: T)
val box: Box<CharSequence> = Box<String>("")
источник

QH

Quantum Harmonizer in Kotlin Community
variance отлично видно на функциях: (T) -> R — это interface Function1<in T, out R>
источник

CL

Constantine Linnick in Kotlin Community
Quantum Harmonizer
пожалуйста:
class Box</*out */T>(val value: T)
val box: Box<CharSequence> = Box<String>("")
Так, нашел у себя опечатку для out всё заработало как надо. Теперь почему аналогичный пример с in не работает?

open class Food
open class Grass : Food()
open class AnimalIn<in T : Food> {
   open fun consume(a: T) {}
}
val animalIn2: AnimalIn<Food> = AnimalIn<Grass>() // !!!
источник

CL

Constantine Linnick in Kotlin Community
опа:

val animalIn4: AnimalIn<Grass> = AnimalIn<Food>()
источник

QH

Quantum Harmonizer in Kotlin Community
да-да, Consumer<CharSequence> extends Consumer<String>
источник

CL

Constantine Linnick in Kotlin Community
страничка с проекциями на котлинланге выносит мозг
источник

QH

Quantum Harmonizer in Kotlin Community
Constantine Linnick
страничка с проекциями на котлинланге выносит мозг
можно прочитать Java Generics FAQ (правда, его забросили и не фиксят)
источник
2020 March 29

PE

Pavel Erokhin in Kotlin Community
Разве 1.4 релиз выходил?
источник

КР

Кирилл Романенко in Kotlin Community
Pavel Erokhin
Разве 1.4 релиз выходил?
Лол, забавно
источник

BP

Bogdan Panchenko in Kotlin Community
Pavel Erokhin
Разве 1.4 релиз выходил?
Только м1, это имеют в виду стабильный, стабильный на данный момент, есть же регулярные  dev билды etc
источник

QH

Quantum Harmonizer in Kotlin Community
Bogdan Panchenko
Только м1, это имеют в виду стабильный, стабильный на данный момент, есть же регулярные  dev билды etc
что?
источник

VP

Vladimir Petrakovich in Kotlin Community
Pavel Erokhin
Разве 1.4 релиз выходил?
Видимо, набор фич уже определён, и теперь будут только исправления
источник