包含Java代碼執(zhí)行順序6的詞條

JAVA程序的執(zhí)行順序

在java應(yīng)用程序中,main()方法是程序的入口,最先執(zhí)行!

創(chuàng)新互聯(lián)公司成立于2013年,先為遼寧等服務(wù)建站,遼寧等地企業(yè),進(jìn)行企業(yè)商務(wù)咨詢服務(wù)。為遼寧企業(yè)網(wǎng)站制作PC+手機(jī)+微官網(wǎng)三網(wǎng)同步一站式服務(wù)解決您的所有建站問題。

但是在Applet程序中是沒main()方法的,init()方法會自動執(zhí)行!誰先誰后,自己清楚了吧!

java程序執(zhí)行順序的問題

package org;

public class Demo {

public static void main(String[] args) throws Throwable {

/*

* 步驟 1

*

* 首先聲明并初實(shí)例了一個A類的對象:a

* 程序則進(jìn)入了類A當(dāng)中

*/

A a = new A();

/*

* 步驟 5

*

* 通過以上步驟的判斷,程序的執(zhí)行順序就顯而易見了~~~

*

* 下面是執(zhí)行順序:

*

* 類AA 靜態(tài)屬性 b2 ---------結(jié)果:2

* 類AA 靜態(tài)塊 static{} ----結(jié)果:4

* 類A 靜態(tài)屬性 b2 ----------結(jié)果:6

* 類AA 非靜態(tài)屬性 b1 -------結(jié)果:3

* 類AA 非靜態(tài)方法 AA() -----結(jié)果:1

* 類A 非靜態(tài)屬性 b1 --------結(jié)果:5

* 類A 非靜態(tài)方法 A() -------結(jié)果:7

*

*/

}

}

class AA {

/*

* 步驟 3

*

* 類AA中存在著:

* 1個靜態(tài)屬性 b2

* 1個靜態(tài)塊 static{}

* 一個非靜態(tài)屬性 b1

* 一個構(gòu)造方法 AA()

*/

public AA() {

System.out.println("1");

}

public static B b2 = new B("2");

private B b1 = new B("3");

static {

B b3 = new B("4");

}

}

class A extends AA {

/*

* 步驟 2

*

* 因?yàn)轭怉繼承自類AA

* 所以當(dāng)類A被實(shí)例化的時候會先執(zhí)行類A的父類(AA)

*

* 程序會對比類A和其父類AA

*

* 此時則是程序執(zhí)行編譯順序的關(guān)鍵所在

*

* 屬性的優(yōu)先級要大于方法的優(yōu)先級

* 靜態(tài)屬性的優(yōu)先級要大于非靜態(tài)屬性

* 靜態(tài)方法(包括靜態(tài)塊)的優(yōu)先級要大于非靜態(tài)方法(包括構(gòu)造方法)

*

* 總結(jié)起來就是:靜態(tài)屬性非靜態(tài)屬性靜態(tài)方法非靜態(tài)方法

*

* 而在子類與父類中的執(zhí)行編譯順序則為:(由上至下)

*

* (父類)靜態(tài)屬性

* (父類)靜態(tài)方法

* (子類)靜態(tài)屬性

* (子類)靜態(tài)方法

* (父類)非靜態(tài)屬性

* (父類)非靜態(tài)方法

* (子類)非靜態(tài)屬性

* (子類)非靜態(tài)方法

*

* 所以程序進(jìn)入到了類AA中并與類A進(jìn)行比較!!

*/

/*

* 步驟 4

*

* 類A中存在著:

*

* 一個靜態(tài)屬性 b2

* 一個非靜態(tài)屬性 b1

* 一個構(gòu)造函數(shù) A()

*/

private B b1 = new B("5");

private static B b2 = new B("6");

public A() {

System.out.println("7");

}

}

class B {

public B(String str) {

System.out.println(str);

}

}

不知道我的解釋你能不能理解~~ 希望對你會有幫助!!

如果哪里沒看懂就補(bǔ)充問題吧~~我經(jīng)常來的!!祝你好運(yùn)!!

java 代碼執(zhí)行順序

這兩句話只是設(shè)置屬性啊。

file.setSize(200,300);

file.setVisible(true);

不會最后執(zhí)行的。你打個斷點(diǎn)在

file.Calendar();//顯示當(dāng)前日期

,然后看file屬性,應(yīng)該是會被改變的

java方法執(zhí)行順序

先后順序如下!

1.靜態(tài)塊

2.塊

3.構(gòu)造器

4.父類構(gòu)造器

運(yùn)行順序?yàn)椋?/p>

1. 靜態(tài)塊

2. 父類構(gòu)造器

3. 本類中的塊

4. 本類的構(gòu)造器

名稱欄目:包含Java代碼執(zhí)行順序6的詞條
URL分享:http://muchs.cn/article18/ddcdggp.html

成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、微信公眾號、、外貿(mào)網(wǎng)站建設(shè)App設(shè)計(jì)、App開發(fā)

廣告

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

網(wǎng)站建設(shè)網(wǎng)站維護(hù)公司