Описание тега kotlin-java-interop

2 ответа

Методы Kotlin, принимающие встроенные классы в качестве параметров - как доступ из Java?

Допустим, у меня есть: inline class Email(value: String) а также fun something(email: Email) сейчас, если я хочу позвонить something() с Java не могу. Потому что любой метод, который принимает встроенный класс в качестве параметра, является "искажен…
1 ответ

Скрытие поля INSTANCE объекта Kotlin от Java (и Kotlin)

Короткий вопрос Могу ли я изменить видимость объекта Kotlin INSTANCE (для взаимодействия с Java) internal или ниже? Длинный вопрос Я пишу библиотеку и хочу иметь API-файл / класс, написанный на Kotlin, который предоставляет функцию для вызова из Jav…
1 ответ

Доступ к общедоступным полям kotlin из Java напрямую без получения

Ниже приведен пример шаблона из Android (просто пример, не интересующийся особенностями Android): /*Im a kotlin file*/ class ListItemViewHolder(itemView: View) : RecyclerView.ViewHolder(itemView) { val text: = itemView.my_view } Тогда шаблон таков, …
01 апр '19 в 11:47
1 ответ

Как вы делаете Kotlin статическими переменными и функциями для Java?

С тех пор, как Google сделал Kotlin языком первого класса для Android, возросло количество вопросов, касающихся того, как выполнять определенные вещи в стиле Kotlin, в стиле "Java". Наиболее распространенные из них, как сделать static переменные в к…
15 апр '19 в 23:25
1 ответ

Могу ли я узнать, когда моя библиотека вызывается из Java или Kotlin?

Я занимаюсь разработкой библиотеки Kotlin для Android. Я хочу предоставить отличный опыт для разработчиков как Kotlin, так и Java, но поскольку у меня нет бесконечных ресурсов, мне нужно расставить приоритеты между ними. Библиотека взаимодействует с…
0 ответов

Как создать список Kotlin из Java?

Как получить доступ к таким методам, как listOf, mapOf а также setOf с Java. Я нахожусь в проекте, который не использует Kotlin, но мы хотим использовать эффективно доступные только для чтения коллекции Kotlin. Почему? Потому что даже при использова…
1 ответ

Почему сгенерированный метод получения имеет знаки доллара?

Я нахожусь в процессе преобразования моей кодовой базы из Java в Kotlin, и мы конвертируем несколько классов одновременно. Сегодня во время этого процесса я заметил действительно странную проблему взаимодействия, которая, я надеюсь, поможет обойтись…
25 июл '19 в 20:34
0 ответов

Почему Kotlin слепо превращает внутренние классы в публичные в JVM?

Как вы знаете, частные классы в Kotlin под капотом меняются на частные для пакетов, а внутренние компоненты - на общедоступные. К сожалению, это может привести к известной проблеме здесь. если компилятор видит использование внутренних классов Kotlin…
11 сен '19 в 18:16
1 ответ

Классы данных Kotlin с суперклассом Java

У меня есть класс Java, который содержит общую информацию об объектах базы данных (т.е. их идентификатор). @Data public class DbEntity { protected final String id; public DbEntity(String id) { this.id = id; } } Мы используем Ломбок @Data для генерац…
07 окт '19 в 16:16
0 ответов

Как сослаться на публичное поле java.awt.Dimension из Kotlin

Возможно ли в Kotlin получить прямой доступ к общедоступному резервному полю, объявленному в классе Java, если у этого класса есть соответствующий геттер для поля? Например, JDKjava.awt.Dimension имеет поля width а также height, которые public, но т…
31 янв '20 в 01:14
1 ответ

Переопределить интерфейс Java только с геттерами в Kotlin

У меня есть этот интерфейс на Java: public interface ErrorInfo { String getCode(); String getMessage(); } И я хочу, чтобы это было отменено в коде Kotlin. Кажется, я не могу этого сделать. Вот что я пробовал: Здесь я получаю сообщение об ошибке '&lt…
10 фев '20 в 08:16
1 ответ

Передача карты из Java в Kotlin не компилируется при обновлении карты

У меня есть функция Java с Map<String, Stringи должен передать его функции Kotlin для добавления значений на карту.Проблема в том, что если у меня есть: fun updateMap(map: Map<String, String>) Похоже, что map неизменен, и я не могу: map[KEY…
07 апр '20 в 11:36
1 ответ

Как получить ссылку на статический класс суперкласса Java в Kotlin

У меня есть образец стороннего кода Java: public class ApiClass extends PackagePrivateClass { } abstract class PackagePrivateClass { public static class StaticClass { } } Так только ApiClass а также StaticClassявляются общедоступными. В Java я могу …
02 мар '20 в 18:35
2 ответа

Функция приостановки Kotlin теряет ReactiveSecurityContext при вызове java

Когда я вхожу в функцию приостановки, контекст присутствует. Эта функция вызывается из функции контроллера, которая также приостановлена. suspend fun search(searchRequest: String): String? { val context = ReactiveSecurityContextHolder.getContext().m…
1 ответ

Устаревшие функции kotlin не предупреждены в чистом java-проекте

У меня есть тестовый класс, который написан исключительно с помощью kotlin в библиотечном проекте. class Test{ @Deprecated(message = "Use other function") fun testFunction(id: String): Test { this.testId = id return this } } Я устарел testFunction()…
22 окт '19 в 14:31
0 ответов

Проблема компилятора Kotlin с переопределением конечной функции Java в Kotlin

Я имею дело со следующей проблемой с компилятором Kotlin/Java. Представьте себе следующий сценарий: пустьFirst быть классом Java с последней функцией и Second быть классом Kotlin, расширяющим First с функцией с таким же именем, как последняя функция…
07 ноя '19 в 14:57
0 ответов

Как получить класс только для Kotlin, используя отражение в JVM?

Я разрабатываю плагин gradle, и ему нужно отразить некоторые классы kotlin, чтобы сгенерировать некоторый код, но они не видны в JRE с тем же именем, и я не знаю, как получить к ним правильный доступ. Я знаю что в этом случае kotlin.Any становится j…
2 ответа

Как идиоматически написать метод функционального интерфейса Java по умолчанию в Kotlin?

Я пытаюсь идиоматически преобразовать Java-код шаблона проектирования под названием " Цепочка ответственности" в Kotlin. Но я не понимаю, как преобразовать метод по умолчанию appendNext()интерфейса Java в Котлине. Я попробовал некоторые уже существу…
0 ответов

Конфликт унаследованных объявлений платформы для onCancel(DialogInterface d)

У меня есть фрагмент, который расширяет фрагмент из библиотеки class AppFragment: LibraryFragment() { ... } Фрагмент библиотеки расширяется BaseSupportV4DialogFragment и отменяет onCancel с обнуляемым DialogInterface? параметр open class LibraryFrag…
30 ноя '20 в 12:39
4 ответа

использовать статические методы Java как статические (или одноэлементные) свойства в Kotlin

Мой SDK предоставляет интерфейс Java, в котором есть только статические методы, например public interface MyDevice { public static void setLocation(Location location) {…} public static Location getLocation() {…} } В приложении Java, которое использу…
01 дек '20 в 01:20