难以置信的Java新手,请原谅这个问题的简单性。我已经查看了这个问题的帖子,但似乎都没有帮助。 这是我得到的错误; '找不到适合下面代码的AQAWriteTextFile2016(字符串)'的构造函数。
String filename = "src/warships/resources/PreviousGame.txt";
AQAWriteTextFile2016 write = new AQAWriteTextFile2016(filename);
如果解决方案很简单,我很抱歉,我已经通过AQAWriteTextFile2016类进行了检查,所有需要操作的都是String参数。
AQAWriteTextFile2016(String filename) {
openFile(filename, false);
}
public void openFile(String filename, boolean append) {
try {
outputFile = new BufferedWriter(new FileWriter(filename, append));
} catch (IOException e) {
e.printStackTrace();
} // end try/catch open file
} // end openFileString
答案 0 :(得分:3)
从代码中的代码段,我们看到构造函数没有访问说明符。因此它具有默认的可见性,即package-private。它只能在同一个包装中看到。
如果对构造函数的调用是从不同的包中进行的,那么就不能从那里看到它。
因此,您应该创建构造函数public
,或者在同一个包中进行调用。
答案 1 :(得分:0)
您可能认为具有String参数的构造函数实际上是名为AQAWriteTextFile2016
的方法。请仔细查看退货类型。构造函数不应该有任何返回类型。希望能帮助到你。