版權(quán)說(shuō)明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)
文檔簡(jiǎn)介
1、第第6章章 Java的異常處理機(jī)制的異常處理機(jī)制l主要解決的問(wèn)題主要解決的問(wèn)題: 1、什么是錯(cuò)誤與異常?、什么是錯(cuò)誤與異常? 2、造成、造成Java異常的有哪些原因?異常的有哪些原因? 3、什么是拋出?什么是捕獲?、什么是拋出?什么是捕獲? 4、Java有哪些異常對(duì)象呢?有哪些異常對(duì)象呢? 5、在程序中使用什么語(yǔ)句結(jié)構(gòu)來(lái)處理異常、在程序中使用什么語(yǔ)句結(jié)構(gòu)來(lái)處理異常呢?呢? 6、能否自己創(chuàng)建異常對(duì)象呢?、能否自己創(chuàng)建異常對(duì)象呢? 本章主要內(nèi)容l1.什么是異常處理機(jī)制什么是異常處理機(jī)制l2.異常類的層次結(jié)構(gòu)異常類的層次結(jié)構(gòu)l3.異常的處理異常的處理6.1 什么是異常處理機(jī)制什么是異常處理機(jī)制lJa
2、va的異常處理機(jī)制是用來(lái)處理程序的異常處理機(jī)制是用來(lái)處理程序運(yùn)行時(shí)的錯(cuò)誤的有效機(jī)制,以往需要由運(yùn)行時(shí)的錯(cuò)誤的有效機(jī)制,以往需要由程序員完成的程序出錯(cuò)情況的判別,在程序員完成的程序出錯(cuò)情況的判別,在Java中改為由系統(tǒng)承擔(dān)。通過(guò)系統(tǒng)拋中改為由系統(tǒng)承擔(dān)。通過(guò)系統(tǒng)拋出的異常,程序可以很容易地捕獲并處出的異常,程序可以很容易地捕獲并處理發(fā)生的異常情況。理發(fā)生的異常情況。l本節(jié)的內(nèi)容主要介紹異常處理機(jī)制的基本節(jié)的內(nèi)容主要介紹異常處理機(jī)制的基本概念。本概念。6.1.1 什么是錯(cuò)誤與異常什么是錯(cuò)誤與異常l根據(jù)錯(cuò)誤的性質(zhì)將運(yùn)行錯(cuò)誤分為兩種類根據(jù)錯(cuò)誤的性質(zhì)將運(yùn)行錯(cuò)誤分為兩種類型:型: 1錯(cuò)誤錯(cuò)誤 2異常異常6.
3、1.2 異常發(fā)生的原因異常發(fā)生的原因l異常發(fā)生的原因有以下三種:異常發(fā)生的原因有以下三種: 1Java 虛擬機(jī)檢測(cè)到了非正常的執(zhí)行虛擬機(jī)檢測(cè)到了非正常的執(zhí)行狀態(tài)狀態(tài) 2Java程序代碼中的程序代碼中的throw語(yǔ)句被執(zhí)語(yǔ)句被執(zhí)行。行。 3異步異常發(fā)生。異步異常發(fā)生。6.1.3 如何處理異常如何處理異常JavaJava的異常處理機(jī)制分為兩個(gè)步驟:的異常處理機(jī)制分為兩個(gè)步驟: 1 1拋出異常拋出異常l JavaJava是這樣規(guī)定的:當(dāng)語(yǔ)義限制被違反時(shí),將是這樣規(guī)定的:當(dāng)語(yǔ)義限制被違反時(shí),將會(huì)拋出(會(huì)拋出(throwthrow)異常,即產(chǎn)生一個(gè)異常事件,)異常,即產(chǎn)生一個(gè)異常事件,生成一個(gè)異常對(duì)象,
4、并把它提交給運(yùn)行系統(tǒng),生成一個(gè)異常對(duì)象,并把它提交給運(yùn)行系統(tǒng),再由運(yùn)行系統(tǒng)尋找相應(yīng)的代碼來(lái)處理異常。再由運(yùn)行系統(tǒng)尋找相應(yīng)的代碼來(lái)處理異常。 2 2捕獲異常捕獲異常l 異常拋出后,運(yùn)行時(shí)系統(tǒng)從生成異常對(duì)象的代異常拋出后,運(yùn)行時(shí)系統(tǒng)從生成異常對(duì)象的代碼開(kāi)始,沿方法的調(diào)用棧進(jìn)行查找,直到找到碼開(kāi)始,沿方法的調(diào)用棧進(jìn)行查找,直到找到包含相應(yīng)處理的方法代碼,并把異常對(duì)象交給包含相應(yīng)處理的方法代碼,并把異常對(duì)象交給該方法,稱為捕獲(該方法,稱為捕獲(catchcatch)異常。)異常。6.1.3 如何處理異常如何處理異常 Java提供了異常處理機(jī)制來(lái)處理異常。分為兩個(gè)步驟: 1拋出異常l Java是這樣規(guī)
5、定的:當(dāng)語(yǔ)義限制被違反時(shí),將會(huì)拋出(throw)異常,即產(chǎn)生一個(gè)異常事件,生成一個(gè)異常對(duì)象,并把它提交給運(yùn)行系統(tǒng),再由運(yùn)行系統(tǒng)尋找相應(yīng)的代碼來(lái)處理異常。一個(gè)異常對(duì)象可以由Java虛擬機(jī)來(lái)產(chǎn)生,也可以由運(yùn)行的方法生成。異常對(duì)象中包含了異常事件類型、程序運(yùn)行狀態(tài)等必要信息。 2捕獲異常l 異常拋出后,運(yùn)行時(shí)系統(tǒng)從生成異常對(duì)象的代碼開(kāi)始,沿方法的調(diào)用棧進(jìn)行查找,直到找到包含相應(yīng)處理的方法代碼,并把異常對(duì)象交給該方法為止,這個(gè)過(guò)程稱為捕獲(catch)異常。6.2 異常類的層次結(jié)構(gòu)異常類的層次結(jié)構(gòu)lJava中的異常類具有層次結(jié)構(gòu)組織。中的異常類具有層次結(jié)構(gòu)組織。如圖所示。如圖所示。 6.2.1. Ex
6、ception異常類的子類(1)RuntimeException運(yùn)行時(shí)異常類運(yùn)行時(shí)異常類(2)NoSuchMethodException方法未方法未找到異常找到異常(3)java.awt.AWTException圖形界面圖形界面異常類異常類(4)java.io.TOException輸入輸出異輸入輸出異常類常類(5)Exception異常類的其它子類異常類的其它子類(1)RuntimeException類主要包括以下異常子類:類主要包括以下異常子類:ArithmeticException算術(shù)異常類;算術(shù)異常類;ArrayStoreException數(shù)組下標(biāo)越界異常數(shù)組下標(biāo)越界異常類;類;Cla
7、ssCastException類型強(qiáng)制轉(zhuǎn)換異常類;類型強(qiáng)制轉(zhuǎn)換異常類;IndexOutOfBoundsException下標(biāo)越界下標(biāo)越界異常類;異常類;NullPointerException空指針異常類;空指針異常類;SecurityException違背安全原則異常類。違背安全原則異常類。(2)java.io.TOException類的子類有:類的子類有:IOException:申請(qǐng):申請(qǐng)I/O操作沒(méi)有正常完操作沒(méi)有正常完成。成。EOFException:在輸入操作正常結(jié)束:在輸入操作正常結(jié)束前遇到了文件結(jié)束符。前遇到了文件結(jié)束符。FileNotFoundException:在文件系統(tǒng):在
8、文件系統(tǒng)中,沒(méi)有找到由文件名字符串指定的文中,沒(méi)有找到由文件名字符串指定的文件。件。(3)Exception異常類的其它子類異常類的其它子類:EmptyStackException;NoSuchFieldException;NoSuchMethodException;ClassNotFoundException;CloneNotSupportedException;IllegalAccessException;InstantiationException;InterruptedException。6.2.2 Error錯(cuò)誤類的子類 (1)VirtualMachineError虛擬機(jī)錯(cuò)誤虛擬機(jī)錯(cuò)
9、誤 OutOfMemoryError內(nèi)存溢出錯(cuò)誤內(nèi)存溢出錯(cuò)誤 StackOverflowError棧溢出錯(cuò)誤棧溢出錯(cuò)誤(2)LinkageError鏈接錯(cuò)誤鏈接錯(cuò)誤(3)NoClassDefNotFoundError類定類定義未找到錯(cuò)誤義未找到錯(cuò)誤(4)java.awt.AWTError圖形界面錯(cuò)誤圖形界面錯(cuò)誤6.3 異常的處理異常的處理l異常處理語(yǔ)句格式為:異常處理語(yǔ)句格式為: try / 被監(jiān)視的代碼段,一旦發(fā)生被監(jiān)視的代碼段,一旦發(fā)生異常,則交由其后的異常,則交由其后的catch代碼段處理代碼段處理 catch (異常類型異常類型 e) / 要處理的第要處理的第一種異常一種異常 catc
10、h (異常類型異常類型 e) / 要處理的第要處理的第二種異常二種異常 finally / 最終處理最終處理例例6.1 使用使用 trycatch語(yǔ)句處理異常的過(guò)程。運(yùn)語(yǔ)句處理異常的過(guò)程。運(yùn)行結(jié)果如圖所示行結(jié)果如圖所示: public class TC1 public static void main(String arg3) System.out.println(這是一個(gè)異常處理的例子這是一個(gè)異常處理的例子n); try int i=10; i /=0; catch (ArithmeticException e) System.out.println(異常是:異常是:+e.getMessag
11、e(); finally System.out.println(finally 語(yǔ)句被執(zhí)行語(yǔ)句被執(zhí)行); 例6.2 catch語(yǔ)句中聲明的異常類型不匹配的情況。public class TC2 public static void main(String args) System.out.println(“這是一個(gè)異常處理的例子這是一個(gè)異常處理的例子n”); try int i=10; i /=0; catch (IndexOutOfBoundsException e) System.out.println(異常是:異常是:+e.getMessage(); finally System.out
12、.println(finally 語(yǔ)句被執(zhí)行語(yǔ)句被執(zhí)行); 例6.3 多個(gè)catch子句的異常處理。運(yùn)行結(jié)果如圖所示。public class TC3 public static void main(String args) try int a=args.length; System.out.println(na = +a); int b=42/a; int c=1; c42=99; catch (ArithmeticException e) System.out.println(發(fā)生了被發(fā)生了被 0 除:除:+e); catch (ArrayIndexOutOfBoundsException
13、 e) System.out.println(數(shù)組下標(biāo)越界:數(shù)組下標(biāo)越界:+e); 6.3.2 throw語(yǔ)句語(yǔ)句lthrow語(yǔ)句格式為:語(yǔ)句格式為: ;l程序會(huì)在程序會(huì)在throw語(yǔ)句處立即終止,轉(zhuǎn)向語(yǔ)句處立即終止,轉(zhuǎn)向trycatch尋找異常處理方法,不再執(zhí)尋找異常處理方法,不再執(zhí)行行throw后面的語(yǔ)句。下面的例子中使后面的語(yǔ)句。下面的例子中使用了用了throw語(yǔ)句主動(dòng)拋出一個(gè)異常。語(yǔ)句主動(dòng)拋出一個(gè)異常。例例6.4 throw語(yǔ)句的使用語(yǔ)句的使用,運(yùn)行結(jié)果如圖所示。運(yùn)行結(jié)果如圖所示。public class TC5 static void throwProcess() try throw
14、 new NullPointerException(空指針異??罩羔槷惓?; catch (NullPointerException e) System.out.println(n在在 throwProcess 方法中方法中捕獲一個(gè)捕獲一個(gè)+e.getMassage(); throw e; public static void main(String args) try throwProcess(); catch (NullPointerException e) System.out.println(再次捕獲:再次捕獲:+e); 6.3.3 throws子句子句lthrows用來(lái)表明一個(gè)方法中
15、可能拋出用來(lái)表明一個(gè)方法中可能拋出的各種異常,并說(shuō)明該方法會(huì)拋出異常的各種異常,并說(shuō)明該方法會(huì)拋出異常但不捕獲的異常。如果想明確拋出一個(gè)但不捕獲的異常。如果想明確拋出一個(gè)RuntimeException或自定義異常類,或自定義異常類,就必須在方法的聲明語(yǔ)句中用就必須在方法的聲明語(yǔ)句中用throws子句來(lái)表明它的類型,以便通知調(diào)用其子句來(lái)表明它的類型,以便通知調(diào)用其它方法準(zhǔn)備捕獲它,這種情況一般需要它方法準(zhǔn)備捕獲它,這種情況一般需要兩個(gè)方法來(lái)分別處理拋出異常和處理異兩個(gè)方法來(lái)分別處理拋出異常和處理異常。常。1 拋出異常交其他地方處理異常l在拋出異常的方法中要使用在拋出異常的方法中要使用throw
16、s子子句,句,throws子句的格式為:子句的格式為: 下面的例子聲明在下面的例子聲明在mathod方法中拋出異常方法中拋出異常 IllegalAccessException,在調(diào)用,在調(diào)用mathod的的main方法里方法里捕獲異常。捕獲異常。例例6.56.5 throws語(yǔ)句的使用。運(yùn)行結(jié)果如圖所示。語(yǔ)句的使用。運(yùn)行結(jié)果如圖所示。class TC5 static void mathod() throws IllegalAccessException System.out.println(n在在 mathod 中拋出一個(gè)異常中拋出一個(gè)異常); throw new IllegalAccessE
17、xception(); public static void main(String args) try mathod(); catch (IllegalAccessException e) System.out.println(在在 main 中捕獲異常:中捕獲異常:+e); 2 由方法拋出異常交系統(tǒng)處理l在程序中能夠處理的異常,可設(shè)計(jì)為在程序中能夠處理的異常,可設(shè)計(jì)為try-catch-finally語(yǔ)句捕獲并處理。對(duì)語(yǔ)句捕獲并處理。對(duì)于程序無(wú)法處理必須由系統(tǒng)處理的異常,于程序無(wú)法處理必須由系統(tǒng)處理的異常,可以使用可以使用throws語(yǔ)句在方法中拋出異語(yǔ)句在方法中拋出異常交由系統(tǒng)處理。如下
18、面的程序代碼,常交由系統(tǒng)處理。如下面的程序代碼,就是將捕獲異常交由系統(tǒng)處理。編譯將就是將捕獲異常交由系統(tǒng)處理。編譯將沒(méi)有問(wèn)題,但執(zhí)行程序時(shí),如果該文件沒(méi)有問(wèn)題,但執(zhí)行程序時(shí),如果該文件在當(dāng)前目錄中不存在,將由系統(tǒng)自動(dòng)給在當(dāng)前目錄中不存在,將由系統(tǒng)自動(dòng)給出異常報(bào)告。如:出異常報(bào)告。如:a3.txt系統(tǒng)找不到指系統(tǒng)找不到指定文件。定文件。例例6.6 throws語(yǔ)句拋出異常交系統(tǒng)處理的例子。語(yǔ)句拋出異常交系統(tǒng)處理的例子。 import java.io.*;public class TC6 public static void main (String args) throws IOExceptio
19、n FileInputStream fis = new FileInputStream(a3.txt); 6.3.4 finally語(yǔ)句語(yǔ)句l 當(dāng)一個(gè)異常被拋出時(shí),程序的執(zhí)行就不再是當(dāng)一個(gè)異常被拋出時(shí),程序的執(zhí)行就不再是連續(xù)的了,會(huì)跳過(guò)某些語(yǔ)句,甚至?xí)捎跊](méi)連續(xù)的了,會(huì)跳過(guò)某些語(yǔ)句,甚至?xí)捎跊](méi)有與之匹配的有與之匹配的catch子句而過(guò)早地返回。為子句而過(guò)早地返回。為了確保代碼的執(zhí)行,了確保代碼的執(zhí)行,finally子句就是用來(lái)標(biāo)子句就是用來(lái)標(biāo)識(shí)這樣一段代碼的。即使沒(méi)有識(shí)這樣一段代碼的。即使沒(méi)有catch子句,子句,finally語(yǔ)句塊也會(huì)在執(zhí)行了語(yǔ)句塊也會(huì)在執(zhí)行了try語(yǔ)句塊后立即語(yǔ)句塊后立
20、即被執(zhí)行。被執(zhí)行。l 從一個(gè)方法返回到調(diào)用它的另外一個(gè)方法,從一個(gè)方法返回到調(diào)用它的另外一個(gè)方法,或者是通過(guò)或者是通過(guò)return語(yǔ)句,或者是通過(guò)一個(gè)沒(méi)語(yǔ)句,或者是通過(guò)一個(gè)沒(méi)有被捕獲的異常,但有被捕獲的異常,但finally子句總是在返回子句總是在返回前執(zhí)行。前執(zhí)行。例例6.7 finally子句的使用,運(yùn)行結(jié)果如圖所示。子句的使用,運(yùn)行結(jié)果如圖所示。class TC7 static void mathodA() try System.out.println(nmathodA 拋出一個(gè)異常拋出一個(gè)異常); throw new RuntimeException(); finally System
21、.out.println(執(zhí)行執(zhí)行 mathodA 的的 finally); static void mathodB() try System.out.println(mathodB 正常返回正常返回); return; finally System.out.println(執(zhí)行執(zhí)行 mathodB 的的 finally); public static void main(String args) try mathodA(); catch (Exception e) mathodB(); 6.3.5 編譯時(shí)對(duì)異常情況的檢查編譯時(shí)對(duì)異常情況的檢查l 1可檢測(cè)類和不可檢測(cè)類可檢測(cè)類和不可檢測(cè)類 不
22、可檢測(cè)的異常類是不可檢測(cè)的異常類是RuntimeException及其子類、及其子類、Error及其子類,其他的異常類則及其子類,其他的異常類則是可檢測(cè)的類。標(biāo)準(zhǔn)是可檢測(cè)的類。標(biāo)準(zhǔn)Java API定義了許多異定義了許多異常類,既包括可檢測(cè)的,也包括不可檢測(cè)的。常類,既包括可檢測(cè)的,也包括不可檢測(cè)的。由程序定義的異常類也可以包含可檢測(cè)類和由程序定義的異常類也可以包含可檢測(cè)類和不可檢測(cè)類不可檢測(cè)類。2可檢測(cè)異常的處理l在編譯時(shí),編譯器分析哪些方法會(huì)產(chǎn)生在編譯時(shí),編譯器分析哪些方法會(huì)產(chǎn)生可檢測(cè)的異常,然后檢查方法中的可檢可檢測(cè)的異常,然后檢查方法中的可檢測(cè)異常的處理部分。例如,類測(cè)異常的處理部分。例
23、如,類Thread的方法的方法sleep定義如下:定義如下:public static void sleep (long millis) throws InterruptedException 2不可檢測(cè)的異常(運(yùn)行時(shí)異常類)l編譯器對(duì)不可檢測(cè)的異常類不進(jìn)行檢查。編譯器對(duì)不可檢測(cè)的異常類不進(jìn)行檢查。l因?yàn)橐驗(yàn)镴ava的設(shè)計(jì)者認(rèn)為檢測(cè)這些異常對(duì)的設(shè)計(jì)者認(rèn)為檢測(cè)這些異常對(duì)Java程序的正確性方面幫助不大,而且程序的正確性方面幫助不大,而且這種情況發(fā)生的原因很多。對(duì)每一種情況這種情況發(fā)生的原因很多。對(duì)每一種情況都進(jìn)行處理會(huì)很麻煩,所以這些異常在編都進(jìn)行處理會(huì)很麻煩,所以這些異常在編譯時(shí)不檢查。因?yàn)檫@
24、種錯(cuò)誤可能發(fā)生在程譯時(shí)不檢查。因?yàn)檫@種錯(cuò)誤可能發(fā)生在程序中的許多地方,恢復(fù)起來(lái)很困難或者根序中的許多地方,恢復(fù)起來(lái)很困難或者根本不可能恢復(fù)。本不可能恢復(fù)。l解釋器在執(zhí)行程序時(shí)會(huì)對(duì)出現(xiàn)異常的程序解釋器在執(zhí)行程序時(shí)會(huì)對(duì)出現(xiàn)異常的程序給出異常報(bào)告。給出異常報(bào)告。6.4 創(chuàng)建自己的異常類創(chuàng)建自己的異常類l自定義異常類型是從自定義異常類型是從Exception類中派類中派生的,所以要使用下面的聲明語(yǔ)句來(lái)創(chuàng)生的,所以要使用下面的聲明語(yǔ)句來(lái)創(chuàng)建:建: 例例6.8 創(chuàng)建自定義異常。運(yùn)行結(jié)果如圖所示。創(chuàng)建自定義異常。運(yùn)行結(jié)果如圖所示。class MyException extends Exception pri
25、vate int x; MyException(int a) x=a; public String toString() return MyException;public class TC8 static void mathod(int a) throws MyException / 聲明方法會(huì)拋出聲明方法會(huì)拋出MyException System.out.println(t此處引用此處引用 mathod (+a+); if (a10) throw new MyException(a); / 主動(dòng)拋出主動(dòng)拋出MyException System.out.println(正常返回正常返回);
26、public static void main(String args) try System.out.println(n進(jìn)入監(jiān)控區(qū),執(zhí)行可能發(fā)生異常的程進(jìn)入監(jiān)控區(qū),執(zhí)行可能發(fā)生異常的程序段序段); mathod(8); mathod(20); mathod(6); catch (MyException e) System.out.println(t程序發(fā)生異常并在此處進(jìn)行處理程序發(fā)生異常并在此處進(jìn)行處理); System.out.println(t發(fā)生的異常為:發(fā)生的異常為:+e.toString(); System.out.println(這里可執(zhí)行其它代碼這里可執(zhí)行其它代碼); 習(xí)習(xí) 題
27、題1什么是異常?為什么要進(jìn)行異常處理?什么是異常?為什么要進(jìn)行異常處理?2. 如何創(chuàng)建一個(gè)自定義異常?如何創(chuàng)建一個(gè)自定義異常?3. 如何拋出自定義異常?如何拋出自定義異常?4. 下面的程序有何錯(cuò)誤?下面的程序有何錯(cuò)誤? public class Quiz1 public static void main(String args) myMathod(); myMathod() throw new MyException(); class MyException public String toString() return 自定義異常自定義異常; 5下面程序的輸出是什么?說(shuō)出理由。(C)public class Q1 public static void main(String args) try throw new MyException(); catch (Exception e) Sys
溫馨提示
- 1. 本站所有資源如無(wú)特殊說(shuō)明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁(yè)內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒(méi)有圖紙預(yù)覽就沒(méi)有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫(kù)網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請(qǐng)與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024項(xiàng)目融資合同協(xié)議書
- 2025年度中醫(yī)食療研究與推廣合同4篇
- 2025年度特色餐飲連鎖品牌授權(quán)合同3篇
- 2025年度生態(tài)修復(fù)工程承包商借款合同范本4篇
- 2025年度數(shù)據(jù)中心運(yùn)維外包合同4篇
- 2025年度體育用品代理服務(wù)合同模板4篇
- 2025年度物流車輛環(huán)保排放檢測(cè)合同4篇
- 2025年度人工智能技術(shù)應(yīng)用與開(kāi)發(fā)合同2篇
- 2024版全新銷售擔(dān)保合同范本下載
- 2025年度新能源汽車充電站車位銷售與管理協(xié)議4篇
- 專升本英語(yǔ)閱讀理解50篇
- 施工單位值班人員安全交底和要求
- 中國(guó)保險(xiǎn)用戶需求趨勢(shì)洞察報(bào)告
- 數(shù)字化轉(zhuǎn)型指南 星展銀行如何成為“全球最佳銀行”
- 中餐烹飪技法大全
- 靈芝孢子油減毒作用課件
- 現(xiàn)場(chǎng)工藝紀(jì)律檢查表
- 醫(yī)院品管圈與護(hù)理質(zhì)量持續(xù)改進(jìn)PDCA案例降低ICU病人失禁性皮炎發(fā)生率
- 新型電力系統(tǒng)研究
- 烘干廠股東合作協(xié)議書
- 法院服務(wù)外包投標(biāo)方案(技術(shù)標(biāo))
評(píng)論
0/150
提交評(píng)論