假设我有 2 个模块。一种称为“接收器”,一种称为“修改器”。在接收器模块中,我有一个名为“com.danii.Receiver”的包,其中包含一个名为“DataReceiver”的类。我在 Receiver 模块中有另一个包,名为“com.danii.Entities”,有一个名为“Data”的类。Receiver 模块目前仅导出 com.danii.Receiver。当我在其中运行一个函数时,DataReceiver 类将创建一个新的 Data 对象,并将其发回。在我的修改器模块中,我将其设置为需要 com.danii.Receiver,并且我希望通过 DataReceiver 接收一些数据。我尝试这样做,但无论我做什么我都无法阅读它,因为它无权访问 Data 类。我怎样才能读取 DataReceiver 给我的数据,但仍然无法创建数据?
1 回答

蓝山帝景
TA贡献1843条经验 获得超7个赞
允许您保留当前结构的大部分方面的一种选择是使用另一个导出的包,该包具有由 Data 实现的接口(我现在将其称为 IData)。然后 DataReceiver 可以返回一个 IData 对象(实现仍将通过 Data 类)。IData 可以在其自己的导出包中,也可以在您已经导出的 Receiver 包中。
添加回答
举报
0/150
提交
取消