Kotlin: Видимость статического вложенного класса Java, объявленного внутри невидимого класса

Использование java мой статический вложенный класс java виден, но с использованием Kotlin это не так. См. Мой пример ниже. Есть ли веская причина, по которой это запрещено, или это ошибка? И есть ли какие-либо обходные пути, чтобы я мог расширить NestedStaticClass от Kotlin?

У меня есть пакет-частный класс java, содержащий статический вложенный класс

 package javapackage; class HiddenClass { public static class NestedStaticClass {} } 

HiddenClass распространяется на открытый класс.

 package javapackage; public class VisibleClass extends HiddenClass{} 

Из моего класса java, расширяющего VisibleClass , я вижу NestedStaticClass (он компилирует)

 package otherpackage; import javapackage.VisibleClass; public class JavaClass extends VisibleClass { public static class C4 extends NestedStaticClass {} public JavaClass() { new NestedStaticClass(); } } 

Но от Котлина это не работает. Я получаю ошибку компиляции: «Unresolved reference NestedStaticClass»

 package otherpackage import javapackage.VisibleClass class KotlinClass() : VisibleClass() { class C1() : NestedStaticClass() init { val v = NestedStaticClass() } } 

Intereting Posts
Интеграция Котлина в Java-коде? Исключение при использовании Spring-data-mongodb с Kotlin Как сделать аргумент по умолчанию? Corda: добавление многоуровневых состояний вывода в одной транзакции отношения kotlin coroutine и основного обработчика Статический блок инициализации в Котлине Почему потоки показывают лучшую производительность, чем сопрограммы? Переопределение активателя имущества Котлина приводит к двум JPA @Id Почему «как» в Котлине не бросили в этом случае Позиция метки `@` в Котлине, обозначая приемник с `this` Могу ли я отложить привязку вида в адаптере с помощью расширения Kotlin Android Конструктор, принимающий конструктивный конструктор в производном классе Котлин Есть ли у котлин-родных деструкторы? Java / Kotlin: Почему разборки Джексона датируются иначе, чем SimpleDateFormat? Как изменить правила подсветки синтаксиса для переменной с модификатором lateinit в IntelliJ (Kotlin)?