java - 如何使包私有(private)类仅对其他包可见?

标签 java unit-testing package encapsulation access-specifier

我想用最佳封装实现包,但要测试它。我怎样才能使一个包的包私有(private)成员仅对另一个(友好的)包可见?

最佳答案

是的,这是可以做到的。有点……

包私有(private)内容对同一个包中的其他类可见,但不一定对相同目录

您可以将一个类声明为在同一个包中,但将其放在另一个目录结构下(例如您的测试代码),甚至放在另一个项目中。

你提到了测试,所以我假设你想在你的测试中“看到”这些东西。只需将您的测试类定义为与您的生产代码位于同一个包中(不是同一个目录)。

关于java - 如何使包私有(private)类仅对其他包可见?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/39824001/

相关文章:

java - 为什么Java认为从10到99所有数字的乘积都是0?

java - 如何通过 HTTPS 使用 OrientDB?

java - Spring Integration 入站 JMS 与 JBoss createConnection() : IllegalArgumentException: ClassCastException

java - Javolution 测试模式,注意事项

Scala导入多个包

java - ClassNotFound - 将第三方 Jar 添加到 Maven

javascript - Jasmine:测试 setTimeout 函数抛出错误

unit-testing - NUnit 和 Log4Net 集成 : asserting based on the log

java - 升级没有 .proto 的 protobuf jar 的命名空间

python - 为什么新的 Conda 环境没有像 numpy 这样的包?