版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報或認(rèn)領(lǐng)
文檔簡介
阿?巴巴Java開發(fā)?冊認(rèn)證考試題庫注題?1-101.【多選】如何處理單元測試產(chǎn)?的數(shù)據(jù),下列哪些說法是正確的?()A.測試數(shù)據(jù)?庫時加特殊前綴標(biāo)識。B.測試數(shù)據(jù)使?獨?的測試庫。C.?動回滾單元測試產(chǎn)?的臟數(shù)據(jù)。D.?須區(qū)別,統(tǒng)?在業(yè)務(wù)代碼中進(jìn)?判斷和識別。簡單解析:P29【推薦】:和數(shù)據(jù)庫相關(guān)的單元測試,可以設(shè)定?動回滾機制,不給數(shù)據(jù)庫造成臟數(shù)據(jù)?;蛘邔卧獪y試產(chǎn)?的數(shù)據(jù)有明確的前后綴標(biāo)識。正例:在企業(yè)智能事業(yè)部的內(nèi)部單元測試中,使?ENTERPRISE_INTELLIGENCE_UNIT_TEST_的前綴來標(biāo)識單元測試相關(guān)代碼。2.【多選】關(guān)于并發(fā)處理,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.線程資源必須通過線程池提供,不允許在應(yīng)?中??顯式創(chuàng)建線程。B.同步處理時,能鎖部分代碼區(qū)塊的情況下不要鎖整個?法;?并發(fā)時,同步調(diào)?應(yīng)該考慮到性能損耗。C.創(chuàng)建線程或線程池時,推薦給線程指定?個有意義的名稱,?便出錯時回溯。D.推薦使?Executors.newFixedThreadPool(intx)?成指定??的線程池。(線程池不允許使?Executors去創(chuàng)建,?是通過ThreadPoolExecutor的?式)簡單解析:P15【強制】:線程池不允許使?Executors去創(chuàng)建,?是通過ThreadPoolExecutor的?式,這樣的處理?式讓寫的同學(xué)更加明確線程池的運?規(guī)則,規(guī)避資源耗盡的風(fēng)險。說明:Executors返回的線程池對象的弊端如下:1)FixedThreadPool和SingleThreadPool:允許的請求隊列長度為Integer.MAX_VALUE,可能會堆積?量的請求,從?導(dǎo)致OOM。2)CachedThreadPool:允許的創(chuàng)建線程數(shù)量為Integer.MAX_VALUE,可能會創(chuàng)建?量的線程,從?導(dǎo)致OOM。【強制】:線程資源必須通過線程池提供,不允許在應(yīng)?中??顯式創(chuàng)建線程。說明:線程池的好處是減少在創(chuàng)建和銷毀線程上所消耗的時間以及系統(tǒng)資源的開銷,解決資源不?的問題。如果不使?線程池,有可能造成系統(tǒng)創(chuàng)建?量同類線程?導(dǎo)致消耗完內(nèi)存或者“過度切換”的問題。【強制】:?并發(fā)時,同步調(diào)?應(yīng)該去考量鎖的性能損耗。能??鎖數(shù)據(jù)結(jié)構(gòu),就不要?鎖;能鎖區(qū)塊,就不要鎖整個?法體;能?對象鎖,就不要?類鎖。說明:盡可能使加鎖的代碼塊?作量盡可能的?,避免在鎖代碼塊中調(diào)?RPC?法。P14【強制】:創(chuàng)建線程或線程池時請指定有意義的線程名稱,?便出錯時回溯。正例:?定義線程??,并且根據(jù)外部特征進(jìn)?分組,?如機房信息。3.【多選】下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.對于“明確停?使?的代碼和配置”,如?法、變量、類、配置?件、動態(tài)配置屬性等要堅決從程序中清理出去,避免造成過多垃圾。B.永久棄?的代碼段注釋掉即可,即不?加任何注釋。C.對于暫時被注釋掉,后續(xù)可能恢復(fù)使?的代碼?斷,在注釋代碼上?,統(tǒng)?規(guī)定使?三個斜杠(///)來說明注釋掉代碼的理由。D.不要在視圖模板中加?任何復(fù)雜的邏輯。
簡單解析:P21【參考】:謹(jǐn)慎注釋掉代碼。在上?詳細(xì)說明,?不是簡單地注釋掉。如果??,則刪除。說明:代碼被注釋掉有兩種可能性:1)后續(xù)會恢復(fù)此段代碼邏輯。2)永久不?。前者如果沒有備注信息,難以知曉注釋動機。后者建議直接刪掉(代碼倉庫已然保存了歷史代碼)P23【推薦】:不要在視圖模板中加?任何復(fù)雜的邏輯。說明:根據(jù)MVC理論,視圖的職責(zé)是展?,不要搶模型和控制器的活。P23【推薦】:及時清理不再使?的代碼段或配置信息。說明:對于垃圾代碼或過時配置,堅決清理?凈,避免程序過度臃腫,代碼冗余。正例:對于暫時被注釋掉,后續(xù)可能恢復(fù)使?的代碼?斷,在注釋代碼上?,統(tǒng)?規(guī)定使?三個斜杠(///)來說明注釋掉代碼的理由。4.【多選】關(guān)于分頁查詢,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.分頁查詢,當(dāng)統(tǒng)計的count為0時,應(yīng)該直接返回,不要再執(zhí)?分頁查詢語句。B.iBATIS?帶的queryForList(StringstatementName,intstart,intsize)分頁接?有性能隱患,不允許使?。C.定義明確的sql查詢語句,通過傳?參數(shù)start和size來實現(xiàn)分頁邏輯。D.可使?存儲過程寫分頁邏輯,提?效率。簡單解析:P34【強制】:禁?使?存儲過程,存儲過程難以調(diào)試和擴展,更沒有移植性?!緩娭啤看a中寫分頁查詢邏輯時,若count為0應(yīng)直接返回,避免執(zhí)?后?的分頁語句P35【強制】:iBATIS?帶的queryForList(StringstatementName,intstart,intsize)不推薦使?。說明:其實現(xiàn)?式是在數(shù)據(jù)庫取到statementName對應(yīng)的SQL語句的所有記錄,再通過subList取start,size的?集合。正例:Map<String,Object>map=newHashMap<>();map.put("start",start);map.put("size",size);5.【多選】根據(jù)《阿?巴巴Java開發(fā)?冊》,以下功能必須進(jìn)??平權(quán)限控制校驗的有()A.訂單詳情頁?。B.類?管理后臺。C.店鋪裝修后臺。D.訂單付款頁?。簡單解析:P30【強制】?屬于?戶個?的頁?或者功能必須進(jìn)?權(quán)限控制校驗。說明:防?沒有做?平權(quán)限校驗就可隨意訪問、修改、刪除別?的數(shù)據(jù),?如查看他?的私信內(nèi)容、修改他?的訂單。6.【多選】關(guān)于數(shù)據(jù)庫中NULL的描述,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.NULL=NULL的返回結(jié)果為true。B.NULL與任何值的?較結(jié)果都為NULL。C.NULL<>1的返回結(jié)果為true。D.當(dāng)某?列的值全是NULL時,sum(col)的返回結(jié)果為NULL。簡單解析:P34【強制】使?ISNULL()來判斷是否為NULL值。說明:NULL與任何值的直接?較都為NULL。1)NULL<>NULL的返回結(jié)果是NULL,?不是false。2)NULL=NULL的返回結(jié)果是NULL,?不是true。3)NULL<>1的返回結(jié)果是NULL,?不是true。【強制】當(dāng)某?列的值全是NULL時,count(col)的返回結(jié)果為0,但sum(col)的返回結(jié)果為NULL,因此使?sum()時需注意NPE問題。正例:使?如下?式來避免sum的NPE問題:SELECTIFNULL(SUM(column),0)FROMtable;7.【多選】關(guān)于接?使?拋異常還是返回錯誤碼,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.向公司外部提供的http/api接?,推薦使?“錯誤碼”?式返回異?;蛘咤e誤信息。B.對于應(yīng)?內(nèi)部的?法調(diào)?,推薦使?“拋出異?!钡?式處理異常或者錯誤信息。C.跨應(yīng)?的RPC調(diào)?,推薦使?將“錯誤碼”和“錯誤簡短信息”封裝成Result的?式進(jìn)?返回。D.對外提供的接?,?定要保證邏輯健壯性:盡量避免空指針等技術(shù)類異常;對于業(yè)務(wù)類異常要做好錯誤碼或者異常信息的封裝。簡單解析:P25【參考】對于公司外的http/api開放接?必須使?“錯誤碼”;?應(yīng)?內(nèi)部推薦異常拋出;跨應(yīng)?間RPC調(diào)?優(yōu)先考慮使?Result?式,封裝isSuccess()?法、“錯誤碼”、“錯誤簡短信息”。說明:關(guān)于RPC?法返回?式使?Result?式的理由:1)使?拋異常返回?式,調(diào)??如果沒有捕獲到就會產(chǎn)?運?時錯誤。2)如果不加棧信息,只是new?定義異常,加???的理解的errormessage,對于調(diào)?端解決問題的幫助不會太多。如果加了棧信息,在頻繁調(diào)?出錯的情況下,數(shù)據(jù)序列化和傳輸?shù)男阅軗p耗也是問題。P25【推薦】防?NPE,是程序員的基本修養(yǎng),注意NPE產(chǎn)?的場景:1)返回類型為基本數(shù)據(jù)類型,return包裝數(shù)據(jù)類型的對象時,?動拆箱有可能產(chǎn)?NPE。反例:publicintf(){returnInteger對象},如果為null,?動解箱拋NPE。2)數(shù)據(jù)庫的查詢結(jié)果可能為null。3)集合?的元素即使isNotEmpty,取出的數(shù)據(jù)元素也可能為null。4)遠(yuǎn)程調(diào)?返回對象時,?律要求進(jìn)?空指針判斷,防?NPE。5)對于Session中獲取的數(shù)據(jù),建議進(jìn)?NPE檢查,避免空指針。6)級聯(lián)調(diào)?obj.getA().getB().getC();?連串調(diào)?,易產(chǎn)?NPE。正例:使?JDK8的Optional類來防?NPE問題。8.【單選】關(guān)于類的序列化,下列說法哪些是正確的()A.類的序列化與serialVersionUID毫?關(guān)系。B.如果完全不兼容升級,不需要修改serialVersionUID值。C.POJO類的serialVersionUID不?致會編譯出錯。D.POJO類的serialVersionUID不?致會拋出序列化運?時異常。簡單解析:P8【強制】序列化類新增屬性時,請不要修改serialVersionUID字段,避免反序列失敗;如果完全不兼容升級,避免反序列化混亂,那么請修改serialVersionUID值。說明:注意serialVersionUID不?致會拋出序列化運?時異常。9.【多選】關(guān)于Java的接?描述,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.在接?類中的?法和屬性使?public修飾符。B.對于Service類,內(nèi)部的實現(xiàn)類加Impl的后綴與接?區(qū)別。例如:ProductServiceImpl實現(xiàn)ProductService接?。C.對于Service類,基于SOA的理念,是以接??式暴露服務(wù)。
D.盡量不在接??定義變量,如果?定要定義變量,肯定是與接??法相關(guān),?且是整個應(yīng)?的基礎(chǔ)常量。簡單解析:P3【推薦】接?類中的?法和屬性不要加任何修飾符號(public也不要加),保持代碼的簡潔性,并加上有效的Javadoc注釋。盡量不要在接??定義變量,如果?定要定義變量,肯定是與接??法相關(guān),并且是整個應(yīng)?的基礎(chǔ)常量。正例:接??法簽名voidcommit();接?基礎(chǔ)常量StringCOMPANY=“alibaba”;反例:接??法定義publicabstractvoidf();說明:JDK8中接?允許有默認(rèn)實現(xiàn),那么這個default?法,是對所有實現(xiàn)類都有價值的默認(rèn)實現(xiàn)。P3接?和實現(xiàn)類的命名有兩套規(guī)則:1)【強制】對于Service和DAO類,基于SOA的理念,暴露出來的服務(wù)?定是接?,內(nèi)部的實現(xiàn)類?Impl的后綴與接?區(qū)別。正例:CacheServiceImpl實現(xiàn)CacheService接?。2)【推薦】如果是形容能?的接?名稱,取對應(yīng)的形容詞為接?名(通常是–able的形容詞)。正例:AbstractTranslator實現(xiàn)Translatable接?10.【單選】集合在遍歷過程中,有時需要對符合?定條件的元素進(jìn)?刪除,下列哪些說法是正確的()A.在foreach循環(huán)?進(jìn)?元素的remove操作。B.使?Iterator?式,如果有并發(fā),需要對Iterator對象加鎖。C.Iterator進(jìn)?元素的刪除操作,絕對是線程安全的。D.Java?法實現(xiàn)在遍歷時,進(jìn)?刪除元素操作。簡單解析:P12【強制】不要在foreach循環(huán)?進(jìn)?元素的remove/add操作。remove元素請使?Iterator?式,如果并發(fā)操作,需要對Iterator對象加鎖。正例:List<String>list=newArrayList<>();list.add("1");list.add("2");Iterator<String>iterator=list.iterator();while(iterator.hasNext()){Stringitem=iterator.next();if(刪除元素的條件){iterator.remove();}}反例:for(Stringitem:list){if("1".equals(item)){list.remove(item);}}說明:以上代碼的執(zhí)?結(jié)果肯定會出乎?家的意料,那么試?下把“1”換成“2”,會是同樣的結(jié)果嗎?題?11-2011.【多選】關(guān)于基本數(shù)據(jù)類型與包裝數(shù)據(jù)類型的使?標(biāo)準(zhǔn),下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.所有的POJO類屬性必須使?包裝數(shù)據(jù)類型。B.RPC?法的返回值和參數(shù)必須使?包裝數(shù)據(jù)類型。C.因為JAVA的?動裝箱與拆箱機制,不需要根據(jù)場景來區(qū)分?jǐn)?shù)據(jù)類型。D.所有的局部變量推薦使?基本數(shù)據(jù)類型。簡單解析:P9關(guān)于基本數(shù)據(jù)類型與包裝數(shù)據(jù)類型的使?標(biāo)準(zhǔn)如下:1)【強制】所有的POJO類屬性必須使?包裝數(shù)據(jù)類型。2)【強制】RPC?法的返回值和參數(shù)必須使?包裝數(shù)據(jù)類型。3)【推薦】所有的局部變量使?基本數(shù)據(jù)類型。說明:POJO類屬性沒有初值是提醒使?者在需要使?時,必須??顯式地進(jìn)?賦值,任何NPE問題,或者?庫檢查,都由使?者來保證。正例:數(shù)據(jù)庫的查詢結(jié)果可能是null,因為?動拆箱,?基本數(shù)據(jù)類型接收有NPE風(fēng)險。反例:?如顯?成交總額漲跌情況,即正負(fù)x%,x為基本數(shù)據(jù)類型,調(diào)?的RPC服務(wù),調(diào)?不成功時,返回的是默認(rèn)值,頁?顯?為0%,這是不合理的,應(yīng)該顯?成中劃線。所以包裝數(shù)據(jù)類型的null值,能夠表?額外的信息,如:遠(yuǎn)程調(diào)?失敗,異常退出。12.【多選】關(guān)于索引的設(shè)計,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.對varchar類型的字段建?索引,必須指定索引長度。B.對varchar類型的字段建?索引,不需要指定索引長度,這樣索引區(qū)分度最好。C.業(yè)務(wù)上具有唯?特性的字段(含組合字段),必須指定唯?索引。D.建復(fù)合索引時,?般選擇區(qū)分度?的字段放在最左列。簡單解析:P33【強制】在varchar字段上建?索引時,必須指定索引長度,沒必要對全字段建?索引,根據(jù)實際?本區(qū)分度決定索引長度即可。說明:索引的長度與區(qū)分度是?對?盾體,?般對字符串類型數(shù)據(jù),長度為20的索引,區(qū)分度會?達(dá)90%以上,可以使?count(distinctleft(列名,索引長度))/count(*)的區(qū)分度來確定。P33【推薦】建組合索引的時候,區(qū)分度最?的在最左邊。正例:如果wherea=?andb=?,如果a列的?乎接近于唯?值,那么只需要單建idx_a索引即可。說明:存在?等號和等號混合時,在建索引時,請把等號條件的列前置。如:wherec>?andd=?那么即使c的區(qū)分度更?,也必須把d放在索引的最前列,即索引idx_d_c。13.【多選】關(guān)于??庫版本號的命名?式,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.版本號命名格式:主版本號.次版本號.修訂號。B.主版本號:產(chǎn)品?向改變,或者?規(guī)模API不兼容,或者架構(gòu)不兼容升級。C.次版本號:保持相對兼容性,增加主要功能特性,影響范圍極?的API不兼容修改。D.修訂號:保持完全兼容性,修復(fù)BUG、新增次要功能特性等。簡單解析:P38【強制】??庫版本號命名?式:主版本號.次版本號.修訂號1)主版本號:產(chǎn)品?向改變,或者?規(guī)模API不兼容,或者架構(gòu)不兼容升級。2)次版本號:保持相對兼容性,增加主要功能特性,影響范圍極?的API不兼容修改。3)修訂號:保持完全兼容性,修復(fù)BUG、新增次要功能特性等。說明:注意起始版本號必須為:1.0.0,?不是0.0.1,正式發(fā)布的類庫必須先去中央倉庫進(jìn)?查證,使版本號有延續(xù)性,正式版本號不允許覆蓋升級。如當(dāng)前版本:1.3.3,那么下?個合理的版本號:1.3.4或1.4.0或2.0.014.【多選】關(guān)于索引的使?,下列哪些說法是正確的()A.查詢語句WHEREa+1=5可以利?a索引。B.查詢語句WHEREdate_format(gmt_create,‘%Y-%m-%d’)='2016-11-11’?法利?gmt_create索引。C.當(dāng)c列類型為char時,查詢語句WHEREc=5?法利?c索引。D.索引字段使?時不能進(jìn)?函數(shù)運算。
簡單解析:P33【推薦】防?因字段類型不同造成的隱式轉(zhuǎn)換,導(dǎo)致索引失效。索引列上有函數(shù)運算,導(dǎo)致不?索引15.【多選】關(guān)于?產(chǎn)環(huán)境的?志?件,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.異常信息應(yīng)該包括兩類信息:案發(fā)現(xiàn)場信息和異常堆棧信息。B.?志?件推薦?少保存15天,因為有些異常具備以“周”為頻次發(fā)?的特點。C.避免重復(fù)打印?志,浪費磁盤空間,務(wù)必在log4j.xml中設(shè)置additivity=false。D.錯誤?志和業(yè)務(wù)?志盡量分開存放。簡單解析:P26【強制】所有?志?件?少保存15天,因為有些異常具備以“周”為頻次發(fā)?的特點。?絡(luò)運?狀態(tài)、安全相關(guān)信息、系統(tǒng)監(jiān)測、管理后臺操作、?戶敏感操作需要留存相關(guān)的?絡(luò)?志不少于6個??!緩娭啤勘苊庵貜?fù)打印?志,浪費磁盤空間,務(wù)必在log4j.xml中設(shè)置additivity=false。正例:【強制】異常信息應(yīng)該包括兩類信息:案發(fā)現(xiàn)場信息和異常堆棧信息。如果不處理,那么通過關(guān)鍵字throws往上拋出。正例:logger.error(各類參數(shù)或者對象toString()+“_”+e.getMessage(),e);16.【多選】關(guān)于代碼注釋,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.特殊注釋標(biāo)記,請注明標(biāo)記?與標(biāo)記時間。B.待辦事宜(TODO):([標(biāo)記?,標(biāo)記時間,[預(yù)計處理時間])C.在注釋中?FIXME標(biāo)記某代碼雖然實現(xiàn)了功能,但是實現(xiàn)的?法有待商榷,希望將來能改進(jìn)D.在注釋中?FIXME標(biāo)記某代碼是錯誤的,?且不能?作,需要及時糾正的情況簡單解析:P22【參考】特殊注釋標(biāo)記,請注明標(biāo)記?與標(biāo)記時間。注意及時處理這些標(biāo)記,通過標(biāo)記掃描,經(jīng)常清理此類標(biāo)記。線上故障有時候就是來源于這些標(biāo)記處的代碼。1)待辦事宜(TODO):(標(biāo)記?,標(biāo)記時間,[預(yù)計處理時間])表?需要實現(xiàn),但?前還未實現(xiàn)的功能。這實際上是?個Javadoc的標(biāo)簽,?前的Javadoc還沒有實現(xiàn),但已經(jīng)被?泛使?。只能應(yīng)?于類,接?和?法(因為它是?個Javadoc標(biāo)簽)。2)錯誤,不能?作(FIXME):(標(biāo)記?,標(biāo)記時間,[預(yù)計處理時間])在注釋中?FIXME標(biāo)記某代碼是錯誤的,?且不能?作,需要及時糾正的情況。17.【多選】關(guān)于MySQL性能優(yōu)化的描述,下列哪些說法是正確的()A.主鍵查詢優(yōu)先于?級索引查詢。B.表連接有?定的代價,故表連接數(shù)量越少越好。C.?般情況下,?級索引掃描優(yōu)先于全表掃描。D.可以使?通過索引避免排序代價。簡單解析:P33【推薦】如果有orderby的場景,請注意利?索引的有序性。orderby最后的字段是組合索引的?部分,并且放在索引組合順序的最后,避免出現(xiàn)file_sort的情況,影響查詢性能。正例:wherea=?andb=?orderbyc;索引:a_b_c反例:索引如果存在范圍查詢,那么索引有序性?法利?,如:WHEREa>10ORDERBYb;索引a_b?法排序
【推薦】SQL性能優(yōu)化的?標(biāo):?少要達(dá)到range級別,要求是ref級別,如果可以是consts最好。說明:1)consts單表中最多只有?個匹配?(主鍵或者唯?索引),在優(yōu)化階段即可讀取到數(shù)據(jù)。2)ref指的是使?普通的索引(normalindex)。3)range對索引進(jìn)?范圍檢索。反例:explain表的結(jié)果,type=index,索引物理?件全掃描,速度?常慢,這個index級別?較range還低,與全表掃描是?巫見?巫。18.【多選】關(guān)于索引的設(shè)計和使?,下列哪些說法是正確的()A.若查詢條件中不包含索引的最左列,則?法使?索引。B.對于范圍查詢,只能利?索引的最左列。C.對于orderbyA或groupbyA語句,在A上建?索引,可以避免排序。?D.對于多列排序,要需所有所有列排序?向?致,才能利?索引。?簡單解析:P33同上19.【多選】關(guān)于類命名,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.抽象類命名使?Abstract或Base開頭。B.異常類命名使?Exception結(jié)尾。C.測試類命名以它要測試的類的名稱開始,以Test結(jié)尾。D.如果使?到了設(shè)計模式,建議在類名中體現(xiàn)出具體模式。例如代理模式的類命名:LoginProxy;觀察者模式命名:ResourceObserver。簡單解析:P1【強制】抽象類命名使?Abstract或Base開頭;異常類命名使?Exception結(jié)尾;測試類命名以它要測試的類的名稱開始,以Test結(jié)尾?!就扑]】如果模塊、接?、類、?法使?了設(shè)計模式,在命名時需體現(xiàn)出具體模式。說明:將設(shè)計模式體現(xiàn)在名字中,有利于閱讀者快速理解架構(gòu)設(shè)計理念。20.【多選】關(guān)于數(shù)據(jù)庫模糊檢索的描述,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.絕對禁?左模糊。B.絕對禁?全模糊。C.絕對禁?右模糊。D.全模糊或左模糊查詢求需,優(yōu)先使?搜索引擎。簡單解析:P33【強制】頁?搜索嚴(yán)禁左模糊或者全模糊,如果需要請?搜索引擎來解決。說明:索引?件具有B-Tree的最左前綴匹配特性,如果左邊的值未確定,那么?法使?此索引。題?21-3021.【多選】關(guān)于代碼注釋,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.所有的抽象?法(包括接?中的?法)必須要?javadoc注釋。B.所有的?法,包括私有?法,最好都增加注釋,有總?沒有強。C.過多過濫的注釋,代碼的邏輯?旦修改,修改注釋是相當(dāng)?的負(fù)擔(dān)。D.我的命名和代碼結(jié)構(gòu)?常好,可以減少注釋的內(nèi)容。
簡單解析:P21【參考】好的命名、代碼結(jié)構(gòu)是?解釋的,注釋?求精簡準(zhǔn)確、表達(dá)到位。避免出現(xiàn)注釋的?個極端:過多過濫的注釋,代碼的邏輯?旦修改,修改注釋是相當(dāng)?的負(fù)擔(dān)。22.【多選】關(guān)于checked/uncheckedexception,下列哪些說法是正確的()A.繼承java.lang.Error的類屬于checkedexception。B.checked異常繼承java.lang.Exception類。C.unchecked異常繼承java.lang.RuntimeException類。D.NullPointerException,IllegalArgumentException屬于uncheckedexception。簡單解析:P21【推薦】定義時區(qū)分unchecked/checked異常,避免直接拋出newRuntimeException(),更不允許拋出Exception或者Throwable,應(yīng)使?有業(yè)務(wù)含義的?定義異常。推薦業(yè)界已定義過的?定義異常,如:DAOException/ServiceException等23.【單選】關(guān)于Map類型集合的遍歷?式,下列哪些說法是正確的()A.Map類型的實現(xiàn)類都同時實現(xiàn)了Iterator接?。B.使?foreach進(jìn)?遍歷。C.推薦使?keySet進(jìn)?遍歷。D.推薦使?entrySet進(jìn)?遍歷。簡單解析:P13【推薦】使?entrySet遍歷Map類集合KV,?不是keySet?式進(jìn)?遍歷。說明:keySet其實是遍歷了2次,?次是轉(zhuǎn)為Iterator對象,另?次是從hashMap中取出key所對應(yīng)的value。?entrySet只是遍歷了?次就把key和value都放到了entry中,效率更?。如果是JDK8,使?Map.forEach?法。24.【多選】關(guān)于變量、?法名、包的命名,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.POJO類中的任何布爾類型的變量,都不要加is,因為部分框架解析時有可能會出現(xiàn)序列化錯誤。B.包名統(tǒng)?使?單數(shù)形式,如:com.alibaba.mpp.util。C.中括號是數(shù)組類型的?部分,數(shù)組定義如下:String[]args;不要誤寫為Stringargs[];D.Service/DAO層?法命名可以參考規(guī)約,例如:刪除的?法推薦使?remove或delete做前綴。簡單解析:P1-2【強制】類型與中括號緊挨相連來表?數(shù)組。正例:定義整形數(shù)組int[]arrayDemo;反例:在main參數(shù)中,使?Stringargs[]來定義?!緩娭啤堪y(tǒng)?使??寫,點分隔符之間有且僅有?個?然語義的英語單詞。包名統(tǒng)?使?單數(shù)形式,但是類名如果有復(fù)數(shù)含義,類名可以使?復(fù)數(shù)形式。正例:應(yīng)??具類包名為com.alibaba.ai.util、類名為MessageUtils(此規(guī)則參考spring的框架結(jié)構(gòu))25.【多選】關(guān)于常量定義,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.不允許出現(xiàn)任何魔法值(即未經(jīng)預(yù)先定義的常量)直接出現(xiàn)在代碼中。B.魔法值是指程序中隨意定義并賦值的變量值,如果代碼編寫者明?變量值意義是可以任意使?的,例如在代碼中寫if(status==3)returnerror;符合規(guī)范。C.如果變量值僅在?個范圍內(nèi)變化推薦?Enum類。D.在程序中,?律禁?使?枚舉類型。
簡單解析:P4【強制】不允許任何魔法值(即未經(jīng)預(yù)先定義的常量)直接出現(xiàn)在代碼中。【推薦】如果變量值僅在?個固定范圍內(nèi)變化?enum類型來定義。說明:如果存在名稱之外的延伸屬性應(yīng)使?enum類型,下?正例中的數(shù)字就是延伸信息,表??年中的第?個季節(jié)。26.【多選】關(guān)于maven依賴、仲裁、規(guī)則,下列哪些說法是正確的()A.(dependencies)的依賴會默認(rèn)傳遞給?項?。B.(dependencies)的依賴絕對不會傳遞給?項?。C.在(dependencyManagement)中指定版本號。D.避免在不同的?項?,聲明同?個??庫的不同版本號。簡單解析:P39【推薦】所有pom?件中的依賴聲明放在(dependencies)語句塊中,所有版本仲裁放在(dependencyManagement)語句塊中。說明:(dependencyManagement)?只是聲明版本,并不實現(xiàn)引?,因此?項?需要顯式的聲明依賴,version和scope都讀取??pom。?(dependencies)所有聲明在主pom的(dependencies)?的依賴都會?動引?,并默認(rèn)被所有的?項?繼承。27.【單選】關(guān)于??庫升級,下列哪些說法是正確的()A.升級??庫只是改個版本號,不需要關(guān)聯(lián)功能的回歸。B.升級??庫需要?對仲裁結(jié)果的差異,謹(jǐn)慎評估。C.升級??庫,絕對不會影響到其它??庫的版本號。D.只要此??庫負(fù)責(zé)?保證說不會有任何影響,即可?膽升級,直接發(fā)布上線。簡單解析:P38【強制】??庫的新增或升級,保持除功能點之外的其它jar包仲裁結(jié)果不變。如果有改變,必須明確評估和驗證。說明:在升級時,進(jìn)?dependency:resolve前后信息?對,如果仲裁結(jié)果完全不?致,那么通過dependency:tree命令,找出差異點,進(jìn)?排除jar包。28.【多選】關(guān)于表字段和索引,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.表字段注釋,如果修改字段含義或?qū)ψ侄伪?的狀態(tài)追加時,需要及時更新。B.合適的字符存儲長度,不但節(jié)約數(shù)據(jù)庫表空間、節(jié)約索引存儲,更重要的是提升檢索速度。C.針對表的每個字段都增加索引,加快查詢速度。D.字段的區(qū)分度越?,索引的查找速度越快。簡單解析:P32【參考】合適的字符存儲長度,不但節(jié)約數(shù)據(jù)庫表空間、節(jié)約索引存儲,更重要的是提升檢索速度【推薦】如果修改字段含義或?qū)ψ侄伪?的狀態(tài)追加時,需要及時更新字段注釋。29.【單選】關(guān)于測試代碼的覆蓋率,下列哪些說法是正確的?()A.路徑覆蓋是最強覆蓋,符合路徑覆蓋且測試全部通過,程序絕對沒有問題。B.語句覆蓋度是最弱的覆蓋度量?式。C.分?覆蓋與條件覆蓋其實是?回事。D.判定條件覆蓋與路徑覆蓋其實是?回事。簡單解析:語句覆蓋常常被?指責(zé)為“最弱的覆蓋”,它只管覆蓋代碼中的執(zhí)?語句,卻不考慮各種分?的組合等等。假如你的上司只要求你達(dá)到語句覆蓋,那么你可以省下很多功夫,但是,換來的確實測試效果的不明顯,很難更多地發(fā)現(xiàn)代碼中的問題。
判定覆蓋(DecisionCoverage)?稱分?覆蓋(BranchCoverage),所有邊界覆蓋(All-EdgesCoverage),基本路徑覆蓋(BasicPathCoverage),判定路徑覆蓋(Decision-Decision-Path)。它度量程序中每?個判定的分?是否都被測試到了。條件覆蓋(ConditionCoverage)它度量判定中的每個?表達(dá)式結(jié)果true和false是否被測試到了。路徑覆蓋(PathCoverage)?稱斷?覆蓋(PredicateCoverage)。它度量了是否函數(shù)的每?個分?都被執(zhí)?了。這句話也?常好理解,就是所有可能的分?都執(zhí)??遍,有多個分?嵌套時,需要對多個分?進(jìn)?排列組合,可想?知,測試路徑隨著分?的數(shù)量指數(shù)級別增加。30.【多選】Hashtable,HashMap,ConcurrentHashMap都是Map的實現(xiàn)類,它們在處理null值的存儲上有細(xì)微的區(qū)別,下列哪些說法是正確的()A.Hashtable的KV都不可以為null。B.HashMap的KV都可以為null。C.HashMap的K不可以為null,V可以為null。D.ConcurrentHashMap的KV都不可以為null。簡單解析:P14題?31-4031.【多選】關(guān)于數(shù)據(jù)庫命名規(guī)則,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.數(shù)據(jù)庫庫名和表名沒有規(guī)定,可任意取名,只要?便記憶即可。B.庫名應(yīng)該盡量與應(yīng)?名稱保持?致,表的命名最好是業(yè)務(wù)名稱_表名的?式。C.?論是庫名還是表名都禁?保留字,如desc、match、range等。D.表名、字段名必須使??寫字母或數(shù)字。簡單解析:P31-32【強制】表名、字段名必須使??寫字母或數(shù)字,禁?出現(xiàn)數(shù)字開頭,禁?兩個下劃線中間只出現(xiàn)數(shù)字。數(shù)據(jù)庫字段名的修改代價很?,因為?法進(jìn)?預(yù)發(fā)布,所以字段名稱需要慎重考慮。說明:MySQL在Windows下不區(qū)分??寫,但在Linux下默認(rèn)是區(qū)分??寫。因此,數(shù)據(jù)庫名、表名、字段名,都不允許出現(xiàn)任何?寫字母,避免節(jié)外?枝?!緩娭啤拷?保留字,如desc、range、match、delayed等,請參考MySQL官?保留字。【推薦】表的命名最好是遵循“業(yè)務(wù)名稱_表的作?”。【推薦】庫名與應(yīng)?名稱盡量?致。32.【多選】關(guān)于異常的處理?式,下列哪些說法是正確的()A.為防?obj對象本?空指針異常,書寫代碼時應(yīng)該注意加異常捕獲處理,例如:try{obj.method()}catch(NullPointerExceptione){……}。B.?法簽名中,拋給調(diào)?者的關(guān)鍵字為throwsC.?法內(nèi)部,拋出異常實例對象為throwsD.?定義異常要做到“認(rèn)知對等”,即:拋出者和接收者要保持對?定義異常的認(rèn)知統(tǒng)?,接收?需要知道這種異常的含義和對應(yīng)的處理?案。簡單解析:?33.【多選】數(shù)組使?Arrays.asList轉(zhuǎn)化為集合,下列說法哪些正確的()A.數(shù)組元素的修改,會影響到轉(zhuǎn)化過來的集合。B.數(shù)組元素的修改,不會影響到轉(zhuǎn)化過來的集合。
C.對于轉(zhuǎn)換過來的集合,它的add/remove/clear?法會拋出:UnsupportedOperationException。D.Arrays.asList體現(xiàn)的是適配器模式,只是轉(zhuǎn)換接?,后臺的數(shù)據(jù)仍是數(shù)組。簡單解析:P12【強制】使??具類Arrays.asList()把數(shù)組轉(zhuǎn)換成集合時,不能使?其修改集合相關(guān)的?法,它的add/remove/clear?法會拋出UnsupportedOperationException異常。說明:asList的返回對象是?個Arrays內(nèi)部類,并沒有實現(xiàn)集合的修改?法。Arrays.asList體現(xiàn)的是適配器模式,只是轉(zhuǎn)換接?,后臺的數(shù)據(jù)仍是數(shù)組。String[]str=newString[]{"yang","hao"};Listlist=Arrays.asList(str);第?種情況:list.add(“yangguanbao”);運?時異常。第?種情況:str[0]=“changed”;也會隨之修改,反之亦然。34.【多選】關(guān)于?件編碼和格式的設(shè)定,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.IDE的textfileencoding設(shè)置為GBK格式。B.IDE的textfileencoding設(shè)置為UTF-8格式。C.IDE中?件的換?符使?unix格式。D.IDE中?件的換?符使?windows格式。簡單解析:P6【強制】IDE的textfileencoding設(shè)置為UTF-8;IDE中?件的換?符使?Unix格式,不要使?Windows格式。35.【多選】關(guān)于數(shù)據(jù)庫是與否概念的列的命名?式,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.對于是與否概念的列名,必須使?can_abc來表。?B.對于是與否概念的列名,必須使?is_abc來表?。C.數(shù)據(jù)類型是varchar(1)(Y表?是,N表?否)。D.數(shù)據(jù)類型是unsignedtinyint.(1表?是,0表?否)。簡單解析:P31【強制】表達(dá)是與否概念的字段,必須使?is_xxx的?式命名,數(shù)據(jù)類型是unsignedtinyint(1表?是,0表?否)。說明:任何字段如果為?負(fù)數(shù),必須是unsigned。注意:POJO類中的任何布爾類型的變量,都不要加is前綴,所以,需要在設(shè)置從is_xxx到Xxx的映射關(guān)系。數(shù)據(jù)庫表?是與否的值,使?tinyint類型,堅持is_xxx的命名?式是為了明確其取值含義與取值范圍。正例:表達(dá)邏輯刪除的字段名is_deleted,1表刪除,0表未刪除。36.【多選】以下關(guān)于格式規(guī)約的說法,正確的有哪些()A.代碼塊縮進(jìn)4個空格,如果使?tab縮進(jìn),請設(shè)置成1個tab為4個空格;B.代碼塊縮進(jìn)5個空格,如果使?tab縮進(jìn),請設(shè)置成1個tab為5個空格。C.為了保持代碼美觀,《?冊》強烈推薦增加若?空格,使某??的變量與相鄰對應(yīng)位置的變量對齊。D.?法體內(nèi)的執(zhí)?語句組、變量的定義語句組、不同的業(yè)務(wù)邏輯之間或者不同的語義之間推薦插??個空?;相同業(yè)務(wù)邏輯和語義之間不需要插?空?。簡單解析:P6-7【強制】采?4個空格縮進(jìn),禁?使?tab字符。說明:如果使?tab縮進(jìn),必須設(shè)置1個tab為4個空格。IDEA設(shè)置tab為4個空格時,請勿勾選Usetabcharacter;?在eclipse中,必須勾選insertspacesfortabs?!就扑]】不同邏輯、不同語義、不同業(yè)務(wù)的代碼之間插??個空?分隔開來以提升可讀性。說明:任何情形,沒有必要插?多個空?進(jìn)?隔開37.【多選】通過集合A.subList()獲取?集合B,下列說法哪些是正確的()A.返回的集合B沒有實現(xiàn)Serializable接?,不能被序列化,所以不能應(yīng)?于RPC場景。B.在B集合中添加某個元素,那么A集合也會添加進(jìn)去此元素。C.集合A中元素的修改不會影響到集合B的任何操作。D.對A元素個數(shù)的修改,會導(dǎo)致集合B的遍歷產(chǎn)?ConcurrentModificationException異常。簡單解析:P11【強制】ArrayList的subList結(jié)果不可強轉(zhuǎn)成ArrayList,否則會拋出ClassCastException異常,即java.util.RandomAccessSubListcannotbecasttojava.util.ArrayList。說明:subList返回的是ArrayList的內(nèi)部類SubList,并不是ArrayList?是ArrayList的?個視圖,對于SubList?列表的所有操作最終會反映到原列表上。【強制】在subList場景中,?度注意對原集合元素的增加或刪除,均會導(dǎo)致?列表的遍歷、增加、刪除產(chǎn)?ConcurrentModificationException異常。38.【多選】關(guān)于捕獲異常和拋異常,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.如果需要捕獲不同類型異常,為了?便處理,可以使?catch(Exceptione){…}。B.不要捕獲異常后不處理,丟棄異常信息。C.捕獲異常與拋異常,必須是完全匹配,或者捕獲異常是拋異常的?類。D.異常定義時區(qū)分unchecked/checked異常,避免直接使?RuntimeException拋出。簡單解析:P24-25【強制】捕獲異常是為了處理它,不要捕獲了卻什么都不處理?拋棄之,如果不想處理它,請將該異常拋給它的調(diào)?者。最外層的業(yè)務(wù)使?者,必須處理異常,將其轉(zhuǎn)化為?戶可以理解的內(nèi)容?!緩娭啤坎东@異常與拋異常,必須是完全匹配,或者捕獲異常是拋異常的?類。說明:如果預(yù)期對?拋的是繡球,實際接到的是鉛球,就會產(chǎn)?意外情況。39.【多選】關(guān)于線程安全,下列哪些說法是正確的()A.SimpleDateFormat是線程不安全的類。B.SimpleDateFormat是線程安全的類。C.?般不要定義SimpleDateFormat的static變量,如果定義為static,必須保證線程安全。D.推薦使?Apache封裝好的DateUtils和DateFormatUtils?具類,來處理時間?期轉(zhuǎn)換問題。簡單解析:15【強制】SimpleDateFormat是線程不安全的類,?般不要定義為static變量,如果定義為static,必須加鎖,或者使?DateUtils?具類。正例:注意線程安全,使?DateUtils。亦推薦如下處理:privatestaticfinalThreadLocal<DateFormat>df=newThreadLocal<DateFormat>(){@OverrideprotectedDateFormatinitialValue(){returnnewSimpleDateFormat("yyyy-MM-dd");}};說明:如果是JDK8的應(yīng)?,可以使?Instant代替Date,LocalDateTime代替Calendar,DateTimeFormatter代替SimpleDateFormat,官?給出的解釋:simplebeautifulstrongimmutablethread-safe。40.【多選】為了更?便地進(jìn)?單元測試,被測試的業(yè)務(wù)代碼應(yīng)避免以下哪些情況?()A.構(gòu)造?法中做的事情過多。B.存在過多的全局變量和靜態(tài)?法。C.存在過多的外部依賴。D.存在過多的條件語句。簡單解析:P29【參考】為了更?便地進(jìn)?單元測試,業(yè)務(wù)代碼應(yīng)避免以下情況:構(gòu)造?法中做的事情過多。存在過多的全局變量和靜態(tài)?法。存在過多的外部依賴。存在過多的條件語句。說明:多層條件語句建議使?衛(wèi)語句、策略模式、狀態(tài)模式等?式重構(gòu)。題?41-5041.【多選】關(guān)于控制語句,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.推薦if-else的?式可以改寫成衛(wèi)語句的形式。B.盡量減少try-catch塊內(nèi)的邏輯,定義對象、變量、獲取數(shù)據(jù)庫連接等操作可以移到try-catch塊外處理C.if(condition)statements;單?語句不需要使??括號。D.在?個switch塊內(nèi),都必須包含?個default語句并且放在最后,即使它什么代碼也沒有。簡單解析:P17-19【強制】在if/else/for/while/do語句中必須使??括號。說明:即使只有??代碼,避免采?單?的編碼?式:if(condition)statements;【強制】在?個switch塊內(nèi),每個case要么通過continue/break/return等來終?,要么注釋說明程序?qū)⒗^續(xù)執(zhí)?哪到?個case為?;在?個switch塊內(nèi),都必須包含?個default語句并且放在最后,即使它什么代碼也沒有。說明:注意break是退出switch語句塊,?return是退出?法體?!就扑]】循環(huán)體中的語句要考量性能,以下操作盡量移?循環(huán)體外處理,如定義對象、變量、獲取數(shù)據(jù)庫連接,進(jìn)?不必要的try-catch操作(這個try-catch是否可以移?循環(huán)體外)42.【多選】關(guān)于參數(shù)有效性驗證,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.防?pagesize過?導(dǎo)致內(nèi)存溢出。B.防?正則輸?源串拒絕服務(wù)ReDOS。C.防?任意重定向。D.預(yù)防SQL注?。簡單解析:P28【強制】?戶請求傳?的任何參數(shù)必須做有效性驗證。說明:忽略參數(shù)校驗可能導(dǎo)致:pagesize過?導(dǎo)致內(nèi)存溢出惡意orderby導(dǎo)致數(shù)據(jù)庫慢查詢?nèi)我庵囟ㄏ騍QL注?反序列化注?正則輸?源串拒絕服務(wù)ReDoS
說明:Java代碼?正則來驗證客戶端的輸?,有些正則寫法驗證普通?戶輸?沒有問題,但是如果攻擊?員使?的是特殊構(gòu)造的字符串來驗證,有可能導(dǎo)致死循環(huán)的結(jié)果。43.【多選】關(guān)于變量和常量定義,下列哪些符合《阿?巴巴Java開發(fā)?冊》()A.Longa=2L;//?寫的LB.Longa=2l;//?寫的lC.常量只定義?次,不再賦值,所以不需要命名規(guī)范。D.不要使??個常量類維護(hù)所有常量,應(yīng)該按常量功能進(jìn)?歸類,分開維護(hù)。簡單解析:P4【強制】在long或者Long賦值時,數(shù)值后使??寫的L,不能是?寫的l,?寫容易跟數(shù)字1混淆,造成誤解。說明:Longa=2l;寫的是數(shù)字的21,還是Long型的2?!就扑]】不要使??個常量類維護(hù)所有常量,要按常量功能進(jìn)?歸類,分開維護(hù)。說明:??全的常量類,雜亂?章,使?查找功能才能定位到修改的常量,不利于理解和維護(hù)。正例:緩存相關(guān)常量放在類CacheConsts下;系統(tǒng)配置相關(guān)常量放在類ConfigConsts下。44.【單選】在定義DO/DTO/VO/等POJO類時,對屬性默認(rèn)值的設(shè)定,下列哪些說法符合《阿?巴巴Java開發(fā)?冊》()A.String類型的默認(rèn)值設(shè)定為空字符串。B.Date類型的默認(rèn)值設(shè)定為newDate()。C.集合類型的默認(rèn)值設(shè)定為Collections.EMPTY_LIST。D.不要設(shè)定任何屬性默認(rèn)值。簡單解析:P9【強制】定義DO/DTO/VO等POJO類時,不要設(shè)定任何屬性默認(rèn)值。反例:POJO類的createTime默認(rèn)值為newDate(),但是這個屬性在數(shù)據(jù)提取時并沒有置?具體值,在更新其它字段時?附帶更新了此字段,導(dǎo)致創(chuàng)建時間被修改成當(dāng)前時間。45.【多選】關(guān)于??庫依賴的解析命令,下列哪些說法是正確的()A.mvndependency:resolve打印出已仲裁依賴的列表。B.mvndependency:tree打印?程整個的依賴樹結(jié)構(gòu)。C.mvndependency:tree-Dverbose
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負(fù)責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 玉溪師范學(xué)院《電氣控制技術(shù)》2023-2024學(xué)年期末試卷
- 玉溪師范學(xué)院《地理教學(xué)設(shè)計》2023-2024學(xué)年第一學(xué)期期末試卷
- 2024幕墻工程合同
- 2024年三元催化凈化器項目建議書
- 2024中外合作經(jīng)營企業(yè)合同農(nóng)副產(chǎn)品
- 2024中國農(nóng)業(yè)銀行抵押擔(dān)保借款合同
- 鹽城師范學(xué)院《文化創(chuàng)意項目實訓(xùn)》2022-2023學(xué)年第一學(xué)期期末試卷
- 2024年火鍋底料項目發(fā)展計劃
- 2024廣州市勞動合同常用范本
- 年產(chǎn)10萬噸潤滑制品及5萬噸冷卻液項目環(huán)評報告表
- 《少年中國說(節(jié)選)》教學(xué)設(shè)計2(第一課時)
- 兒童口腔科就診兒童的行為管理(兒童口腔醫(yī)學(xué)課件)
- 大型壓裂施工現(xiàn)場安全管理規(guī)范
- 辦公家具采購項目質(zhì)量保證售后服務(wù)承諾書
- 高考數(shù)學(xué)微專題集專題2蒙日圓微點1蒙日圓的定義、證明及其幾何性質(zhì)(原卷版+解析)
- 2024屆高考專題復(fù)習(xí):撰寫短視頻腳本+
- 城市燃?xì)夤艿赖壤匣赂脑祉椖砍醪皆O(shè)計說明
- 私人定制導(dǎo)游服務(wù)合同范本
- 信息網(wǎng)絡(luò)傳播視聽節(jié)目許可證申請表(示范文本及錯誤示例)
- 2024年發(fā)展對象考試試題庫及答案(完整版)
- 跨境電商數(shù)據(jù)分析與應(yīng)用-課程標(biāo)準(zhǔn)
評論
0/150
提交評論