gpt4 book ai didi

java - 在另一个包的接口(interface)文件中使用类

转载 作者:行者123 更新时间:2023-12-02 02:08:26 28 4
gpt4 key购买 nike

我有两个包裹。第一个包含一个空接口(interface)和一个在单个文件中实现它的类(“IThing”和“Thing”)。第二个包含另一个接口(interface)(“ITingUser”),它有一个返回“Thing”类型的对象的函数。

当两个文件属于同一个包时,一切正常,但如果它们位于两个单独的包中,则 package2 中的文件无法访问第一个包中定义的类。

Package1 包含以下文件:

package project.package1;

public interface IThing {
}

final class Thing implements IThing {

private int thingField;

public int thingFieldGetter(){
return thingField;
}
}

package2 有:

package project.package2;

import project.package1.IThing;

public interface IThingUser {

public IThing someFunction(); // Works fine

public Thing anotherFunction();
// "Thing" is not recognized when the two files are in separate packages.
}

为什么会发生这种情况?有没有办法在保留此架构的同时解决此问题?

PS:我知道这个结构没有多大意义,但我没有编写 package1 代码,我必须按原样使用它。

最佳答案

问题是 project.package1.Thing 在包外部不可见 project.package1,但是公共(public)类 必须在自己的文件中定义。

关于java - 在另一个包的接口(interface)文件中使用类,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50408554/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com