public class NetworkShared {
public static class LoginRequest {
public String Username;
//...
然后,为了访问它,我正在做这样的事情:
NetworkShared.LoginRequest request = new NetworkShared.LoginRequest();
request.Username = "example"; //this is the problem line
当我尝试访问request.Username时,我遇到了问题。 Eclipse表示字段NetworkShared.LoginRequest.Username不可见。我很困惑,因为它一直是公开的。 Java不是我的主要语言,所以我可能会遗漏一些东西。有谁知道吗?
编辑:我可能会在Android上添加这个。 NetworkShared在它自己的JAR中,我已将它添加到构建路径中。除了访问request.Username。之外没有其他错误答案 0 :(得分:1)
结论:这似乎是带有引用JAR的Eclipse刷新问题。
它应该工作。顶级类隐式static
所以基本上NetworkShared.LoginRequest
是识别LoginRequest类的正确方法。你这样做是正确的。
我的回答不是你的日食问题 - 这是你的Java问题 - 所以至少你可以解决你的Java相关问题。
除了你的eclipse可能有一个bug(也不是第一个)之外,你能不能在你的eclipse中编译下面的代码?您可能已将原始代码修剪为实际可用的内容。
<强> NetworkShared.java 强>
public class NetworkShared {
public static class LoginRequest {
public String Username;
}
}
<强> Test.java 强>
public class Test {
public static void main(String[] args) {
NetworkShared.LoginRequest o = new NetworkShared.LoginRequest();
o.Username = null;
}
}