免费观看又色又爽又黄的小说免费_美女福利视频国产片_亚洲欧美精品_美国一级大黄大色毛片

java中普通代碼塊,java普通代碼塊 賦值 靜態變量

在java中什么是代碼塊?

java中有四種代碼塊

從事達州托管服務器,服務器租用,云主機,網絡空間,申請域名,CDN,網絡代維等服務。

1.普通代碼塊:直接在{}中出現的。

2.構造代碼塊:在構造函數的{}中出現的。

3.靜態代碼塊:static{}中出現的。

4.同步代碼塊:多線程中出現。

java中的靜態代碼塊、代碼塊、構造器的執行順序是怎樣呢,這三者有什么作用呢

先說執行順序:我們在new一個對象時,如果類還沒加載,就需要先將類加載到內存,此時就會執行靜態代碼塊,在創建對象時,是先執行代碼塊,然后執行構造器。所以靜態代碼塊、代碼塊、構造器的執行順序是:靜態代碼塊→代碼塊→構造器。

再說作用:靜態代碼塊是用于初始化類的(在加載類時執行,只執行一次),代碼塊是用于初始化對象的(在創建對象時執行,每次創建對象時都執行),構造器是用于創建對象的。

Java常見代碼塊的作用與區別

1. 局部代碼塊

作用在方法當中,作用是控制變量的生命周期:

public void show(){

{

System.out.println("局部代碼塊運行!");

}

}123456

在程序中當我們定義完成一個局部變量x之后,并且在接下來的代碼中,不想再用到它時,那么就沒必要讓x在內存中繼續占用空間。因此就有了局部代碼塊。

2. 構造代碼塊

作用在類的定義Body中,作用是給類的部分字段統一初始化:

public class Apple {

private String size;

//構造代碼塊

{

System.out.println("構造代碼塊運行!");

size = "E";

}

}

12345678910

構造代碼塊與構造函數的區別是:構造代碼塊是給所有對象進行統一初始化,而構造函數是給對應的對象初始化,因為構造函數是可以多個的,運行哪個構造函數就會建立什么樣的對象,但無論建立哪個對象,都會先執行相同的構造代碼塊。也就是說,構造代碼塊中定義的是不同對象共性的初始化內容。所以理所當然的,構造代碼塊在構造函數之前執行。

3. 靜態代碼塊

作用有兩個:

(1)給類的靜態變量賦值;

(2)聲明靜態變量;

作用在類的Body中,對類中的靜態變量初始化:

public class APP {

static int x, y; // 靜態變量

static {

x = 5; // 給靜態變量x賦值

}

public static void myMethod() {

y = x++ + ++x; // x++ 先使用x的值再加1;++x先加1再使用x的值

}

public static void main(String[] args) {

x--;

myMethod();

System.out.println(x + y + ++x);

}

}

輸出:23

網站標題:java中普通代碼塊,java普通代碼塊 賦值 靜態變量
網頁鏈接:http://m.newbst.com/article4/hsegie.html

成都網站建設公司_創新互聯,為您提供網站設計公司微信小程序網站制作全網營銷推廣響應式網站動態網站

廣告

聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯

搜索引擎優化