先說執行順序:我們在new一個對象時,如果類還沒加載,就需要先將類加載到內存,此時就會執行靜態代碼塊,在創建對象時,是先執行代碼塊,然后執行構造器。所以靜態代碼塊、代碼塊、構造器的執行順序是:靜態代碼塊→代碼塊→構造器。
站在用戶的角度思考問題,與客戶深入溝通,找到浦口網站設計與浦口網站推廣的解決方案,憑借多年的經驗,讓設計與互聯網技術結合,創造個性化、用戶體驗好的作品,建站類型包括:成都網站設計、做網站、企業官網、英文網站、手機端網站、網站推廣、域名與空間、網頁空間、企業郵箱。業務覆蓋浦口地區。
再說作用:靜態代碼塊是用于初始化類的(在加載類時執行,只執行一次),代碼塊是用于初始化對象的(在創建對象時執行,每次創建對象時都執行),構造器是用于創建對象的。
public static void main(String[] args)throws IOException {
File file =new File("D:\\備份\\"); // 根據路徑創建一個文件對象
getFileIsJava(file,"demo2.txt"); // 調用getFileIsJava方法
}
public static void getFileIsJava(File file, String pathName)throws IOException {
File[] files=file.listFiles(); // 列出這個文件對應路徑地下的所有文件和路徑。即D:\\備份\\ 底下所有文件
BufferedWriter bw=new BufferedWriter(new FileWriter(pathName+"",true)); // 創建一個輸出文件對象,輸出的文件問pathName
for(int i=0;ifiles.length;i++){ // 對文件和路徑進行迭代
String name=files[i].getName(); // 獲得每次迭代的文件名或者路徑名
if(files[i].isDirectory()){ //如果這個路徑
getFileIsJava(files[i], pathName);//再次嵌套調用getFileIsJava方法。直到獲得文件為止。
}
else if(name.endsWith(".xml")){//如果這個文件是xml文件
String path=files[i].getAbsolutePath();//獲得這個文件的絕對路徑
bw.write(path);//把絕對路徑寫入輸出流(即寫入 pathName對應的文件)
bw.newLine();//換行
bw.flush();//刷新輸出流。是緩存立即寫入文件
System.out.println(path);//打印出路徑
}
}
bw.close();//關閉輸出流
}
Java靜態代碼塊的作用:Java靜態代碼塊中的代碼會在類加載JVM時運行,且只被執行一次,也就是說這些代碼不需要實例化類就能夠被調用。一般情況下,如果有些代碼必須在項目啟動的時候就執行的時候,就需要使用靜態代碼塊。
Java靜態代碼塊的用法:一個類可以使用不包含在任何方法體中的靜態代碼塊,當類被載入時,靜態代碼塊被執行,且只被執行一次,靜態塊常用來執行類屬性的初始化。例如:
static
{
int
a=0;
}
java中有四種代碼塊
1.普通代碼塊:直接在{}中出現的。
2.構造代碼塊:在構造函數的{}中出現的。
3.靜態代碼塊:static{}中出現的。
4.同步代碼塊:多線程中出現。
標題名稱:java文件操作代碼塊 java代碼塊的執行順序
網頁鏈接:http://vcdvsql.cn/article18/ddippgp.html
成都網站建設公司_創新互聯,為您提供搜索引擎優化、網站排名、響應式網站、建站公司、靜態網站、定制開發
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯