当前位置: 代码迷 >> J2SE >> 找不到符号咋回事啊
  详细解决方案

找不到符号咋回事啊

热度:9297   发布时间:2013-02-25 00:00:00.0
找不到符号怎么回事啊?
Java code
package ch1.inputstream;import java.io.*;public class data{        public  static void main(String args[]){        try{        FileInputStream fin=new FileInputStream("D:\\javadaima\\src\\ch1\\inputstream\\a.txt");        }catch(FileNotFoundException ex){ex.printStackTrace();}        try{    byte b=(byte)fin.read();        }catch(IOException ex){ex.printStackTrace();}    System.out.println(b);    }}

D:\javadaima>javac -d class D:\javadaima\src\ch1\inputstream\data.java
D:\javadaima\src\ch1\inputstream\data.java:11: 找不到符号
符号: 变量 fin
位置: 类 ch1.inputstream.data
  byte b=(byte)fin.read();
  ^
D:\javadaima\src\ch1\inputstream\data.java:14: 找不到符号
符号: 变量 b
位置: 类 ch1.inputstream.data
  System.out.println(b);
  ^
2 错误


------解决方案--------------------------------------------------------
fin和b都是局部变量 不在他的作用域使用当然会出问题
先在外面声明并初始化
Java code
package ch1.inputstream;import java.io.*;public class data{        public  static void main(String args[]){        FileInputStream fin= null ;        byte b = 0 ;        try{        fin=new FileInputStream("D:\\javadaima\\src\\ch1\\inputstream\\a.txt");        }catch(FileNotFoundException ex){ex.printStackTrace();}        try{        b=(byte)fin.read();        }catch(IOException ex){ex.printStackTrace();}    System.out.println(b);    }}
  相关解决方案