try catch块中的JAVA错误

时间:2014-02-03 07:16:00

标签: java enums try-catch

我是java的初学者,我正在做一个简单的程序,在不同的文件中创建类并创建对象。 我有两个名为dataFile.java的文件(对于数据a,b,c,它将在方法getdata()的帮助下从键盘输入) 另一个文件称为classFile.java,用于使用来自其他类的数据并打印总和。 但是我在编译dataFile.java

时遇到此错误

dataFile.java的代码如下

import java.io.DataInputStream;
class differentFile
{

        DataInputStream input = new DataInputStream(System.in);

        int a,b,c; 
        try {
        void getdata(){
        a= Integer.valueOf(input.readLine()).intValue();
        b=Integer.valueOf(input.readLine()).intValue();
        c=Integer.valueOf(input.readLine()).intValue();
        }

     }
        catch(Exeption e) {
                System.out.println(" IO ERROR ");
                 }
}

错误即时发现

dataFile.java:8: error: illegal start of type
    try {
    ^
dataFile.java:8: error: ';' expected
    try {
       ^
dataFile.java:17: error: class, interface, or enum expected
    catch(Exeption e) { 
    ^ 
dataFile.java:19: error: class, interface, or enum expected
        } 
        ^
4 errors

我不熟悉这些错误,根据教科书我使用的语法是正确的。如果有人帮助我,那将是非常棒的。谢谢。

3 个答案:

答案 0 :(得分:1)

方法内必须存在try-catch块。您已经在方法之前启动了try,然后在方法中为catch创建try子句之前关闭了方法。您需要将代码重新安排为以下内容:

void getdata() {  // Method starts
    try { // try starts
        a = Integer.valueOf(input.readLine()).intValue();
        b = Integer.valueOf(input.readLine()).intValue();
        c = Integer.valueOf(input.readLine()).intValue();
    } // try ends

    catch (Exeption e) { // catch for the try starts
        System.out.println(" IO ERROR ");
    } // catch ends
} // method ends

答案 1 :(得分:0)

更改如下:

void getdata() {
    try {
        a = Integer.valueOf(input.readLine()).intValue();
        b = Integer.valueOf(input.readLine()).intValue();
        c = Integer.valueOf(input.readLine()).intValue();
    } catch (Exeption e) {
        System.out.println(" IO ERROR ");
    }
}

答案 2 :(得分:-1)

像那样改变

import java.io.DataInputStream;

class differentFile
{

        DataInputStream input = new DataInputStream(System.in);

        int a,b,c; 
        try 
        {
             void getdata()
             {
                 a= Integer.valueOf(input.readLine()).intValue();
                 b=Integer.valueOf(input.readLine()).intValue();
                 c=Integer.valueOf(input.readLine()).intValue();
             } 
        }
        catch(Exeption e) 
        {
                System.out.println(" IO ERROR ");
        }

}