在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í)行!誰先誰后,自己清楚了吧!
package org;
public class Demo {
public static void main(String[] args) throws Throwable {
/*
* 步驟 1
*
* 首先聲明并初實例了一個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
*
* 因為類A繼承自類AA
* 所以當(dāng)類A被實例化的時候會先執(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);
}
}
不知道我的解釋你能不能理解~~ 希望對你會有幫助!!
如果哪里沒看懂就補充問題吧~~我經(jīng)常來的!!祝你好運!!
這兩句話只是設(shè)置屬性啊。
file.setSize(200,300);
file.setVisible(true);
不會最后執(zhí)行的。你打個斷點在
file.Calendar();//顯示當(dāng)前日期
,然后看file屬性,應(yīng)該是會被改變的
先后順序如下!
1.靜態(tài)塊
2.塊
3.構(gòu)造器
4.父類構(gòu)造器
運行順序為:
1. 靜態(tài)塊
2. 父類構(gòu)造器
3. 本類中的塊
4. 本類的構(gòu)造器
名稱欄目:包含Java代碼執(zhí)行順序6的詞條
URL分享:http://jinyejixie.com/article18/ddcdggp.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供面包屑導(dǎo)航、微信公眾號、、外貿(mào)網(wǎng)站建設(shè)、App設(shè)計、App開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)