Создание объектов Kotlin и управление памятью по сравнению с Java - PullRequest
0 голосов
/ 16 декабря 2018

Я слышал, что в Котлине создание новых объектов стоит дешево.Чем Kotlin память аспект создания объектов отличается от Java?Есть ли разница в стоимости создания объектов из data class и class?

Ответы [ 2 ]

0 голосов
/ 16 декабря 2018

Я не ожидал бы никакой разницы, если бы Java и Kotlin были скомпилированы для одной и той же целевой виртуальной машины - не должно иметь значения, какой исходный код выдает один и тот же байт-код.

Что касается data class, Hiosdra правильно указал , что это всего лишь синтаксический сахар, указывающий компилятору выводить некоторые стандартные методы, полезные для классов хранения данных (см. документацию ).

0 голосов
/ 16 декабря 2018

Я думаю, вы имеете в виду Kotlin, нацеленный на JVM, поэтому я расскажу вам об этой цели.

Kotlin использует тот же байт-код, что и Java, поэтому производительность в целом такая же (некоторые операции могут быть менее или более оптимизированы в Kotlin (благодаря компилятору или stdlib) по сравнению с Java).

Классы данных - это просто обычные классы с дополнительно сгенерированными методами toString (), equals (), hashCode () и clone (), поэтому они имеют такую ​​же производительность, что и обычные классы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...