阿里巴巴編碼規(guī)范真題 滿分答案 附帶部分題庫解析
以下是【會(huì)員:飛魚使者】分享的內(nèi)容全文:
阿里巴巴編碼規(guī)范真題 滿分答案 附帶部分題庫解析
多選 1.如何處理單元測(cè)試產(chǎn)生的數(shù)據(jù),下列哪些說法是正確的?ABC
A .測(cè)試數(shù)據(jù)入庫時(shí)加特殊前綴標(biāo)識(shí)。
B .測(cè)試數(shù)據(jù)使用獨(dú)立的測(cè)試庫。
C .自動(dòng)回滾單元測(cè)試產(chǎn)生的臟數(shù)據(jù)。
D .無須區(qū)別,統(tǒng)一在業(yè)務(wù)代碼中進(jìn)行判斷和識(shí)別。
多選 2.關(guān)于并發(fā)處理,下列哪些說法符合《阿里巴巴Java開發(fā)手冊(cè)》:ABC
A .線程資源必須通過線程池提供,不允許在應(yīng)用中自行顯式創(chuàng)建線程。
B .同步處理時(shí),能鎖部分代碼區(qū)塊的情況下不要鎖整個(gè)方法;高并發(fā)時(shí),同步調(diào)用應(yīng)該考慮到性能損耗。
C .創(chuàng)建線程或線程池時(shí),推薦給線程指定一個(gè)有意義的名稱,方便出錯(cuò)時(shí)回溯。
D .推薦使用Executors.newFixedThreadPool(int x)生成指定大小的線程池。(線程池不允許使用 Executors 去創(chuàng)建,而是通過 ThreadPoolExecutor 的方式)
多選 3.下列哪些說法符合《阿里巴巴Java開發(fā)手冊(cè)》:ACD
A .對(duì)于“明確停止使用的代碼和配置”,如方法、變量、類、配置文件、動(dòng)態(tài)配置屬性等要堅(jiān)決從程序中清理出去,避免造成過多垃圾。
B .永久棄用的代碼段注釋掉即可,即不用加任何注釋。
C .對(duì)于暫時(shí)被注釋掉,后續(xù)可能恢復(fù)使用的代碼片斷,在注釋代碼上方,統(tǒng)一規(guī)定使用三 個(gè)斜杠(///)來說明注釋掉代碼的理由。
D .不要在視圖模板中加入任何復(fù)雜的邏輯。
多選 4.關(guān)于分頁查詢,下列哪些說法符合《阿里巴巴Java開發(fā)手冊(cè)》:ABC
A .分頁查詢,當(dāng)統(tǒng)計(jì)的count為0時(shí),應(yīng)該直接返回,不要再執(zhí)行分頁查詢語句。
B .iBATIS自帶的queryForList(String statementName,int start,int size)分頁接口有性能隱患,不允許使用。
C .定義明確的sql查詢語句,通過傳入?yún)?shù)start和size來實(shí)現(xiàn)分頁邏輯。
D .可使用存儲(chǔ)過程寫分頁邏輯,提高效率。
多選 5.根據(jù)《阿里巴巴Java開發(fā)手冊(cè)》,以下功能必須進(jìn)行水平權(quán)限控制校驗(yàn)的有:ABCD
A .訂單詳情頁面。
B .類目管理后臺(tái)。
C .店鋪裝修后臺(tái)。
D .訂單付款頁面。
多選 6.關(guān)于數(shù)據(jù)庫中NULL的描述,下列哪些說法符合《阿里巴巴Java開發(fā)手冊(cè)》:BD
A .NULL=NULL的返回結(jié)果為true。
B .NULL與任何值的比較結(jié)果都為NULL。
C .NULL<>1的返回結(jié)果為true。
D .當(dāng)某一列的值全是NULL時(shí),sum(col)的返回結(jié)果為NULL。
多選 7.關(guān)于接口使用拋異常還是返回錯(cuò)誤碼,下列哪些說法符合《阿里巴巴Java開發(fā)手冊(cè)》:ABCD
A .向公司外部提供的http/api接口,推薦使用“錯(cuò)誤碼”方式返回異?;蛘咤e(cuò)誤信息。
B .對(duì)于應(yīng)用內(nèi)部的方法調(diào)用,推薦使用“拋出異?!钡姆绞教幚懋惓;蛘咤e(cuò)誤信息。
C .跨應(yīng)用的RPC調(diào)用,推薦使用將“錯(cuò)誤碼”和“錯(cuò)誤簡(jiǎn)短信息”封裝成Result的方式進(jìn)行返回。
D .對(duì)外提供的接口,一定要保證邏輯健壯性:盡量避免空指針等技術(shù)類異常;對(duì)于業(yè)務(wù)類異常要做好錯(cuò)誤碼或者異常信息的封裝。
單選 8.關(guān)于類的序列化,下列說法哪些是正確的:D
A .類的序列化與serialVersionUID毫無關(guān)系。
B .如果完全不兼容升級(jí),不需要修改serialVersionUID值。
C .POJO類的serialVersionUID不一致會(huì)編譯出錯(cuò)。
D .POJO類的serialVersionUID不一致會(huì)拋出序列化運(yùn)行時(shí)異常。
多選 9.關(guān)于Java的接口描述,下列哪些說法符合《阿里巴巴Java開發(fā)手冊(cè)》:BCD
A .在接口類中的方法和屬性使用public修飾符。
B .對(duì)于Service類,內(nèi)部的實(shí)現(xiàn)類加Impl的后綴與接口區(qū)別。例如:ProductServiceImpl實(shí)現(xiàn)ProductService接口。
C .對(duì)于Service類,基于SOA的理念,是以接口方式暴露服務(wù)。
D .盡量不在接口里定義變量,如果一定要定義變量,肯定是與接口方法相關(guān),而且是整個(gè)應(yīng)用的基礎(chǔ)常量。
單選 10.集合在遍歷過程中,有時(shí)需要對(duì)符合一定條件的元素進(jìn)行刪除,下列哪些說法是正確的:B
A .在 foreach 循環(huán)里進(jìn)行元素的 remove操作。
B .使用Iterator方式,如果有并發(fā),需要對(duì)Iterator對(duì)象加鎖。
C .Iterator進(jìn)行元素的刪除操作,絕對(duì)是線程安全的。
D .Java無法實(shí)現(xiàn)在遍歷時(shí),進(jìn)行刪除元素操作。
多選 11.關(guān)于基本數(shù)據(jù)類型與包裝數(shù)據(jù)類型的使用標(biāo)準(zhǔn),下列哪些說法符合《阿里巴巴Java開發(fā)手冊(cè)》:ABD
A .所有的POJO類屬性必須使用包裝數(shù)據(jù)類型。
B .RPC方法的返回值和參數(shù)必須使用包裝數(shù)據(jù)類型。
C .因?yàn)镴AVA的自動(dòng)裝箱與拆箱機(jī)制,不需要根據(jù)場(chǎng)景來區(qū)分?jǐn)?shù)據(jù)類型。
D .所有的局部變量推薦使用基本數(shù)據(jù)類型。
多選 12.關(guān)于索引的設(shè)計(jì),下列哪些說法符合《阿里巴巴Java開發(fā)手冊(cè)》:ACD
A .對(duì)varchar類型的字段建立索引,必須指定索引長(zhǎng)度。
B .對(duì)varchar類型的字段建立索引,不需要指定索引長(zhǎng)度,這樣索引區(qū)分度最好。
C .業(yè)務(wù)上具有唯一特性的字段(含組合字段),必須指定唯一索引。
D .建復(fù)合索引時(shí),一般選擇區(qū)分度高的字段放在最左列。
多選 13.關(guān)于二方庫版本號(hào)的命名方式,下列哪些說法符合《阿里巴巴Java開發(fā)手冊(cè)》:ABCD
A .版本號(hào)命名格式:主版本號(hào).次版本號(hào).修訂號(hào)。
B .主版本號(hào):產(chǎn)品方向改變,或者大規(guī)模API不兼容,或者架構(gòu)不兼容升級(jí)。
C .次版本號(hào):保持相對(duì)兼容性,增加主要功能特性,影響范圍極小的API不兼容修改。
D .修訂號(hào):保持完全兼容性,修復(fù)BUG、新增次要功能特性等。
多選 14.關(guān)于索引的使用,下列哪些說法是正確的:BCD
A .查詢語句 WHERE a+1 = 5 可以利用a索引。
B .查詢語句WHERE date_format(gmt_create, '%Y-%m-%d') = '2016-11-11'無法利用gmt_create索引。
C .當(dāng) c 列類型為 char 時(shí),查詢語句 WHERE c = 5 無法利用c索引。
D .索引字段使用時(shí)不能進(jìn)行函數(shù)運(yùn)算。
多選 15.關(guān)于生產(chǎn)環(huán)境的日志文件,下列哪些說法符合《阿里巴巴Java開發(fā)手冊(cè)》:ABCD
A .異常信息應(yīng)該包括兩類信息:案發(fā)現(xiàn)場(chǎng)信息和異常堆棧信息。
B .日志文件推薦至少保存15天,因?yàn)橛行┊惓>邆湟浴爸堋睘轭l次發(fā)生的特點(diǎn)。
C .避免重復(fù)打印日志,浪費(fèi)磁盤空間,務(wù)必在log4j.xml中設(shè)置additivity=false。
D .錯(cuò)誤日志和業(yè)務(wù)日志盡量分開存放。
多選 16.關(guān)于代碼注釋,下列哪些說法符合《阿里巴巴Java開發(fā)手冊(cè)》:ABD
A .特殊注釋標(biāo)記,請(qǐng)注明標(biāo)記人與標(biāo)記時(shí)間。
B .待辦事宜(TODO):( [標(biāo)記人,標(biāo)記時(shí)間,[預(yù)計(jì)處理時(shí)間])
C .在注釋中用FIXME標(biāo)記某代碼雖然實(shí)現(xiàn)了功能,但是實(shí)現(xiàn)的方法有待商榷,希望將來能改進(jìn)
D .在注釋中用FIXME標(biāo)記某代碼是錯(cuò)誤的,而且不能工作,需要及時(shí)糾正的情況
多選 17.關(guān)于MySQL性能優(yōu)化的描述,下列哪些說法是正確的:ABCD
A .主鍵查詢優(yōu)先于二級(jí)索引查詢。
B .表連接有一定的代價(jià),故表連接數(shù)量越少越好。
C .一般情況下,二級(jí)索引掃描優(yōu)先于全表掃描。
D .可以使用通過索引避免排序代價(jià)。
多選 18.關(guān)于索引的設(shè)計(jì)和使用,下列哪些說法是正確的:AD
A .若查詢條件中不包含索引的最左列,則無法使用索引。
B .對(duì)于范圍查詢,只能利用索引的最左列。
C .對(duì)于order by A或group by A語句,在A上建立索引,可以避免排序。
D .對(duì)于多列排序,需要所有所有列排序方向一致,才能利用索引。
多選 19.關(guān)于類命名,下列哪些說法符合《阿里巴巴Java開發(fā)手冊(cè)》:ABCD
A .抽象類命名使用Abstract或Base開頭。
B .異常類命名使用Exception結(jié)尾。
C .測(cè)試類命名以它要測(cè)試的類的名稱開始,以Test結(jié)尾。
D .如果使用到了設(shè)計(jì)模式,建議在類名中體現(xiàn)出具體模式。例如代理模式的類命名:LoginProxy;觀察者模式命名:ResourceObserver。
多選 20.關(guān)于數(shù)據(jù)庫模糊檢索的描述,下列哪些說法符合《阿里巴巴Java開發(fā)手冊(cè)》:ABD
A .絕對(duì)禁止左模糊。
B .絕對(duì)禁止全模糊。
C .絕對(duì)禁止右模糊。
D .全模糊或左模糊查詢需求,優(yōu)先使用搜索引擎。

1.軟件源碼推廣展示:目的展示軟件相關(guān)功能,接收技術(shù)學(xué)習(xí)者測(cè)試、測(cè)評(píng);
2.教程課程信息展示:展示課程信息,傳授課程各階段內(nèi)容;
3.設(shè)計(jì)素材圖片展示:展示素材設(shè)計(jì)理念、思維方式、傳播設(shè)計(jì)理念;
4.福利優(yōu)惠信息展示:分享各類最新的福利信息,各種優(yōu)惠信息展示;
以上分享目的僅供學(xué)習(xí)、參考使用,請(qǐng)勿用于其他用途,如果想商業(yè)使用或者代理,請(qǐng)自行聯(lián)系版權(quán)方獲取授權(quán)。任何未獲取授權(quán)的商業(yè)使用與本站無關(guān),請(qǐng)自行承擔(dān)相應(yīng)責(zé)任。
本站不存儲(chǔ)任何資源文件,敬請(qǐng)周知!
如果您認(rèn)為本頁信息內(nèi)容侵犯了您的相關(guān)權(quán)益(包含但不限于:著作權(quán)、首發(fā)權(quán)、隱私權(quán)等權(quán)利),或者您認(rèn)為自己是此信息的權(quán)利人但是此信息不是自己發(fā)布的,可以直接版權(quán)舉報(bào)投訴,我們會(huì)根據(jù)網(wǎng)站注冊(cè)協(xié)議、資源分享協(xié)議等協(xié)議處理,以保護(hù)您的合法權(quán)益。
本網(wǎng)站采用 BY-NC-SA 協(xié)議進(jìn)行授權(quán) 轉(zhuǎn)載請(qǐng)注明原文鏈接:阿里巴巴編碼規(guī)范真題 滿分答案 附帶部分題庫解析
上一篇: 心理學(xué)的詭計(jì)大全集

侵權(quán)舉報(bào)/版權(quán)申訴



