Возможно ли получить доступ к методу в другом пакете, но в одном и том же проекте, не делая метод открытым или наследуемым?
Sortof, да - вы можете использовать отражение , чтобы получить метод, который вам нужен, вызвать setAccessible(true)
для метода, чтобы подавить проверки доступа, а затем вызывать его из любого места.
Но ...
Я ищу что-то похожее на дружественные сборки в C #.
Это не так, аналогичной функции просто не существует в языке Java. Приведенный выше трюк с отражением действительно должен рассматриваться как не что иное, как взлом, и определенно не то, что вы хотели бы использовать в производственном коде, если на самом деле не было другого допустимого варианта .