java - 无法正确启动 Reader 对象

标签 java bufferedreader

我正在尝试读取文件。所以在我的“Skanner”类(class)中,我有一个如下所示的字段:

私有(private)阅读器阅读器,readerX;

现在我在构造函数中初始化了这些字段:

public Skanner()
    {   
        try 
        {
            Reader readerX = new FileReader("aliceinwonderland.txt");
            Reader reader = new BufferedReader(readerX);
        } 
        catch (FileNotFoundException e) 
        {
            // TODO Auto-generated catch block
            e.printStackTrace();
        }

    }

但是当我尝试使用 Skanner 类的方法中的字段时,出现空指针异常。如果我在构造函数的 try block 中使用 reader.read() ,则不会出现任何问题。为什么我无法在启动的范围之外调用 reader.read()

最佳答案

您通过在方法中重新声明实例成员来隐藏它们。从您发布的代码中删除 Reader 类型声明。

关于java - 无法正确启动 Reader 对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25601644/

相关文章:

java - Java静态成员在静态 block 之后初始化吗?

java - Java 中的 Process.exitValue()

java - 我怎样才能在这个循环中传递所有整数并在最后一行之前停止

java - BufferedReader 即使在按回车后也没有接受输入

java - Hibernate - 如何持久化 Map<UUID,POJO>

java - Linux,JNA : UnsatisfiedLinkError on liblo second method call

java - android.view.InflateException 错误

java - 如何在不缓冲输入的情况下从 InputStream 读取一行?

java - 从网页源读取随机失败 - Java

java - 有没有更好的方法来读取进程的输入流,然后使用指定的方法进行处理?