В Java можно создавать пакетно-частные интерфейсы. Глядя на них с помощью javap, вы видите, что им не хватает "публичной" видимости.
В Scala вы можете объявить черту как private [package] или protected [package], но, глядя в нее с помощью javap, она все еще является общедоступной.
Итак, как вы создаете свойство private-private в Scala?
В то время как компилятор Scala уважает видимость, моя проблема в том, что мой API, вероятно, будет доступен из Java тоже, и я не хочу раскрывать свою внутреннюю реализацию Java.