3

我想知道在 Java 中做这些事情的正确方法是什么。我的测试代码:

public class InitializeTest {
    int i;
    int b;
    int x;
    String frase;

    public static void main (String args[]) {
        InitializeTest IT = new InitializeTest();
        System.out.println(IT.i=IT.getI());
        System.out.println(IT.b=IT.getB());
        System.out.println(IT.x=IT.getX());         
            }

    public int getI(){
        return 3;}
    public int getB(){
        return 5;}
    public int getX(){
        return 8;}
}

我是否应该初始化变量 i、b 和 x?如果没有,会发生什么变化?我读过这个,但我不清楚,谁能给我一个明确的答案?

我在这里读到了这个我真的必须给我的所有变量一个初始值吗?,但不知道Java是否相同。

4

2 回答 2

7

Java 类字段原语被初始化为默认值,对象被初始化为 null。所以数值类型被初始化为 0。

访问一个未初始化的局部变量会给你一个编译器错误。

http://docs.oracle.com/javase/tutorial/java/nutsandbolts/datatypes.html 请参阅“默认值”部分

于 2013-05-15T15:06:30.330 回答
4

int 变量默认初始化为 0。请参阅此链接Why does using a default-valued Java Integer result in a NullPointerException?

我是否应该初始化变量 i、b 和 x?如果没有,会发生什么变化?

所以答案是否定的。不需要

但是,如果是,如果您希望您的原始变量默认返回 JVM 提供的其他默认值,那么您应该继续

于 2013-05-15T15:13:12.210 回答