<小时/>
我有两个类,Test 和 Test2。 Test 创建 Test2 的实例,用于使用 PrintStream 和 FileOutputStream 写入文件。
我收到错误:
write(String) has private access in PrintStream
output.write(str);
^
如果我在声明它的类中正确调用私有(private)变量,为什么会出现此错误?
public class Test
{
public static void main (String[] args)
{
Test2 testWrite = new Test2();
testWrite.openTextFile();
testWrite.writeToFile("Hello.");
testWrite.closeFile();
}
}
和
import java.io.*;
public class Test2{
private PrintStream output;
public void openTextFile(){
try{
output = new PrintStream(new FileOutputStream("output.txt"));
}
catch(SecurityException securityException){}
catch(FileNotFoundException fileNotFoundException){}
}
public void writeToFile(String str){
try{
output.write(str);
}
catch(IOException ioException){}
}
public void closeFile(){
try{
output.close();
}
catch(IOException ioException){}
}
}
最佳答案
私有(private)
方法只能在声明它们的类中访问。您可以使用打印
output.print(str);
或 println
如果您需要将换行符写入文件。
关于java - write(String) 在 PrintStream 中具有私有(private)访问权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21211452/