首頁 > Java > java教程 > 主體

java變數的初始化方法

WBOY
發布: 2023-04-27 18:49:07
轉載
2429 人瀏覽過

1、在宣告變數後,必須使用賦值語句對變數進行明確初始化。

2、變數宣告盡可能靠近變數第一次使用的地方。

3、對於局部變量,如果可以從變數的初始值來推斷其類型,則不需要宣告類型。

只需要使用關鍵字var而不需要指定類型。

實例

//Java 尽量保证所有变量在使用前都能得到恰当的初始化,否则会报异常
//Java中提供了四种初始化方法:默认初始化、显式赋值初始化、调用类对象初始化和调用方法初始化。
 
//错误写法
void f() {
    int i;
    i++;
}
//执行时会报异常,原因是变量i没有初始化
 
 
 
## 成员变量初始化方式之一————默认初始化:
 
public class InitialValues {
    boolean t;
    char c;
    byte b;
    short s;
    int i;
    long l;
    float f;
    double d;
    InitialValues reference;
 
    void printInitialValues() {
        System.out.println("Data type Initial value");
        System.out.println("boolean " + t);
        System.out.println("char[" + c + "]");
        System.out.println("byte " + b);
        System.out.println("short " + s);
        System.out.println("int " + i);
        System.out.println("long " + l);
        System.out.println("float " + f);
        System.out.println("double " + d);
        System.out.println("reference " + reference);
    }
 
    public static void main(String[] args) {
        new InitialValues().printInitialValues();
    }
}
输出:
Data type Initial value
boolean false  
char[]   //char 的默认值为 0或者写为'\u0000',所以显示为空白
byte 0
short 0
int 0
long 0   //0L
float 0.0  //0.0F
double 0.0  
reference null
 
## 成员变量初始化方式之二————显式赋值:
public class InitialValues2 {
 boolean bool = true;
 char ch = 'x';
 byte b = 47;
 short s = 0xff;
 int i = 999;
 long lng = 1;
 float f = 3.14f;
 double d = 3.14159;
}
 
## 成员变量初始化方式之三————调用对象进行初始化赋值:
class Depth {
}
public class Measurement {
    Depth d = new Depth();
    // ...
}
//注意:如果没有为 d 赋予初值就尝试使用它,就会出现运行时错误,会产生异常。
 
## 成员变量初始化方式之四————调用方法进行初始化赋值:
//1、调用无参方法
public class MethodInit {
    int i = f();
    
    int f() {
        return 11;
    }
    
}
 
//2、调用有参方法
public class MethodInit2 {
    int i = f();
    int j = g(i);
    
    int f() {
        return 11;
    }
    
    int g(int n) {
        return n * 10;
    }
}
//注意:调用有参方法时,方法中的参数不能是未初始化的类成员变量,否则会报异常
登入後複製

以上是java變數的初始化方法的詳細內容。更多資訊請關注PHP中文網其他相關文章!

相關標籤:
來源:yisu.com
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板