大战熟女丰满人妻av-荡女精品导航-岛国aaaa级午夜福利片-岛国av动作片在线观看-岛国av无码免费无禁网站-岛国大片激情做爰视频

Java教程
Java標識符與關鍵字
Java變量
Java數據類型
Java運算符
Java控制語句
Java方法
Java面向對象
Java對象的創建和使用
Java封裝
Java中static和this
Java繼承
Java方法覆蓋和多態
Java super
Java基礎練習題

Java static靜態代碼塊

靜態代碼塊的語法格式是這樣的:

類{
//靜態代碼塊
static{
java語句;
}
}

靜態代碼塊在類加載時執行,并且只執行一次。開發中使用不多,但離了它有的時候還真是沒法寫代碼。靜態代碼塊實際上是java語言為程序員準備的一個特殊的時刻,這個時刻就是類加載時刻,如果你想在類加載的時候執行一段代碼,那么這段代碼就有的放矢了。例如我們要在類加載的時候解析某個文件,并且要求該文件只解析一次,那么此時就可以把解析該文件的代碼寫到靜態代碼塊當中了。我們來測試一下靜態代碼塊:

public class StaticTest01 {
	//靜態代碼塊
	static{
		System.out.println(2);
	}
	//靜態代碼塊
	static{
		System.out.println(1);
	}
	//main方法
	public static void main(String[] args) {
		System.out.println("main execute!");
	}
	//靜態代碼塊
	static{
		System.out.println(0);
	}
}

運行結果如下圖所示:

Java開發

圖11-22:靜態代碼塊運行結果

通過以上的測試可以得知一個類當中可以編寫多個靜態代碼塊(盡管大部分情況下只編寫一個),并且靜態代碼塊遵循自上而下的順序依次執行,所以有的時候放在類體當中的代碼是有執行順序的(大部分情況下類體當中的代碼沒有順序要求,方法體當中的代碼是有順序要求的,方法體當中的代碼必須遵守自上而下的順序依次逐行執行),另外靜態代碼塊當中的代碼在main方法執行之前執行,這是因為靜態代碼塊在類加載時執行,并且只執行一次。再來看一下以下代碼:

public class StaticTest02 {
	int i = 100;
	static{
		System.out.println(i);
	}
}

編譯結果如下圖所示:

圖11-23:靜態代碼塊中訪問實例變量編譯報錯

為什么編譯報錯呢?那是因為i變量是實例變量,實例變量必須先創建對象才能訪問,靜態代碼塊在類加載時執行,這個時候對象還沒有創建呢,所以i變量在這里是不能這樣訪問的。可以考慮在i變量前添加static,這樣i變量就變成靜態變量了,靜態變量訪問時不需要創建對象,直接通過“類”即可訪問,例如以下代碼:

public class StaticTest02 {
	static int i = 100;
	static{
		System.out.println("靜態變量i = " + i);
	}
	public static void main(String[] args) {
	}
}

運行結果如下圖所示:

圖11-24:靜態代碼塊中訪問靜態變量

代碼修改為這樣呢?

public class StaticTest02 {
	static{
		System.out.println("靜態變量i = " + i);
	}
	static int i = 100;
}

編譯報錯了,請看下圖:

圖11-25:編譯報錯信息

通過測試,可以看到有的時候類體當中的代碼也是有順序要求的(類體當中定義兩個獨立的方法,這兩個方法是沒有先后順序要求的),靜態代碼塊在類加載時執行,靜態變量在類加載時初始化,它們在同一時間發生,所以必然會有順序要求,如果在靜態代碼塊中要訪問i變量,那么i變量必須放到靜態代碼塊之前。

全部教程
主站蜘蛛池模板: 中文字幕精品一区二区三区视频 | 伊人精品综合 | 狠狠综合欧美综合欧美色 | 国产精品久久久久久久久福利 | 亚洲一区二区天海翼 | 宅男看片午夜大片啪啪mv | 欧美成人一区二区三区 | 香蕉一区二区三区观 | 亚洲日本中文字幕在线 | 亚洲 欧美 bt | 91精品刘玥在线播放 | 中文字幕亚洲综合久久 | 在线观看精品视频一区二区三区 | 亚洲在线视频免费观看 | 日本一区二区三区免费高清在线 | 色婷婷精品大视频在线蜜桃视频 | 九九热视频免费观看 | 永久黄网站色视频免费观看 | 99视频在线观看免费视频 | 欧美视频第一区 | 久久久无码精品亚洲日韩按摩 | 欧美一级毛片不卡免费观看 | 狠狠综合久久久久尤物丿 | 一级毛片a女人刺激视频免费 | 青青青爽线在线视频观看 | 国产香蕉国产精品偷在线观看 | 五月婷网| 精品国产一区二区三区久久影院 | 国产激情一区二区三区 | 草莓视频一区二区精品 | 国产swag在线| 精品国产品香蕉在线观看75 | 亚洲午夜片子大全精品 | 99热这里只有精品69 | 女人18免费毛片视频 | 国产成+人+综合+亚洲不卡 | 美女网站色视频 | 亚洲 欧美 综合 | 五月伊人| 国产特黄一级一片免费 | 亚洲欧美日韩国产综合久 |