我的初学者代码有什么问题?

时间:2018-06-13 15:36:14

标签: java class

我无法理解我的代码有什么问题。在这段代码中,当我试图为一个类中的变量赋值时,我得到这样的错误。 System.out.println也不能在这个类中工作: 1.Intifier预计 2.意想不到的令牌 3.未知类" windows"

public static void main(String[] args) {

}

class building{
    int apart_num;
    apart_num = 3;
}

class apartments{
    double area;
    int lightbulb;
    int windows;
    windows = 4;
}

interface construct_building{

}

interface construct_apartments{

}

1 个答案:

答案 0 :(得分:0)

您在一行声明了一个实例成员:

int apart_num;

然后为其指定一个值:

apart_num = 3;

问题是这是在一个方法之外完成的,那些语句不能分开,你不能分配一个先前在块语句之外声明的变量。

一行(声明和分配):

class building{
    int apart_num = 3;
}

或使用构造函数

class building{
    int apart_num;

    public building(){
        apart_num = 3;
    }
}

或在块声明中

int windows;
{ //a block statement
    windows = 4;
}

然后,如果此代码不是类,则需要执行此操作。

public MyClass{
    public static void main(String[] args){ ... }
    ...

    class Building { //inner class (will exist only inside of a MyClass instance

    }

    static class Apartment { // a nested class, exist whitout a MyClass instance

    }
}

class Level { //A class that have nothing to do  with MyClass and that can not be public.

}

其中MyClass是文件的名称(MyClass.java)