在Java中一直困扰我的一件事是:
如何创建一个应该由下游消费者使用的单个公共类,然后很好地组织它依赖于包中的类?
例如(有点人为),我有一个依赖于LdapPersistenceHelper和DBPersistenceHelper的UserDao类.UserDao类位于一个名为com.company.dao的包中,我希望这两个帮助程序位于一个名为com.company.dao.persistencehelper的包中.但是,我不想让这两个助手足够通用,以便其他人可以使用它们.我怎么样?如果我让帮助者"受保护"(真的,没有修饰符),那么我无法从UserDao到达它们.如果我公开,其他人可能会使用它们.
java ×1