我正在并发服务器上创建一个基本的下载中心。
我下一个主要的方法创建在Server class
文件对象
File[] files = {
new File("1. Program", "myProgram.jar"),
new File("2. Image", "myPicture.jpg"),
new File("3. Book", "myBook.txt")};
此引用到File class
,我创建的构造函数和getter。
class File {
private String option;
private String fileName;
public File(String option, String fileName) {
this.option = option;
this.fileName= fileName;
}
public String getOption() {
return option;
}
public String getFileName() {
return fileName;
}
public void getFileOptions(File[] files) {
for (File f : files) {
System.out.printf("The option is %s\n", f.getOption());
}
}
}
我试图从我的ServerState class
调用getFileOptions
方法。
theOutput= File.getFileOptions(files);
输出是返回给客户端的字符串。
我的IDE说(files)
无法找到。任何想法,我要去错了吗?凸轮我不把结果返回到最初没有创建对象的类中?
我不明白这个问题。你是否想引用来自不同类的'文件'?因为如果它没有被声明为静态的,你就无法做到这一点。 – Jivings 2012-02-26 21:02:12
比这更糟,Jivings。如果这是问题,他会想知道为什么'Server.files'失败。某种程度上,这是令人印象深刻的。 – 2012-02-26 21:04:53
显示您将呼叫置于'getFileOptions'的位置。对于初学者来说,如果这是在你的'ServerState'类,你需要用'File'的实例调用'getFileOptions',或'getFileOptions'需要是静态的。 – 2012-02-26 21:12:54