- 相關(guān)推薦
軟件工程師面試題小練帶參考答案
從小學(xué)、初中、高中到大學(xué)乃至工作,我們最不陌生的就是試題了,試題是學(xué);蚋髦鬓k方考核某種知識(shí)才能的標(biāo)準(zhǔn)。你知道什么樣的試題才算得上好試題嗎?以下是小編精心整理的軟件工程師面試題小練帶參考答案,僅供參考,歡迎大家閱讀。
142面試題小練
一、JAVA編程基礎(chǔ)部分 1. "=="和equals方法究竟有什么區(qū)別?
答:==操作符專門用來比較兩個(gè)變量的值是否相等,也就是用于比較變量所對(duì)應(yīng)的內(nèi)存中所存儲(chǔ)的數(shù)值是否相同,要比較兩個(gè)基本類型的數(shù)據(jù)或兩個(gè)引用變量是否相等,只能用==操作符。
Equals()方法是用于比較兩個(gè)獨(dú)立對(duì)象的內(nèi)容是否相同,就好比去比較兩個(gè)人的長(zhǎng)相是否相同,它比較的兩個(gè)對(duì)象是獨(dú)立的。 2. 作用域(訪問修飾符)public,private,protected,以及不寫時(shí)的區(qū)別?
答:如果在修飾的元素上面沒有寫任何訪問修飾符,則表示friendly。(C#中是internal) 訪問修飾符
public
protected
friendly
private 當(dāng)前類 √ √ √ √ 同一個(gè)包 √ √ √ × 子孫類 √ √ × × 其他包 √ × × ×
3. 請(qǐng)簡(jiǎn)述面向?qū)ο笥心乃膫(gè)方面的特征?
答:
1).封裝:即將對(duì)象封裝成一個(gè)高度自治和相對(duì)封閉的個(gè)體,對(duì)象狀態(tài)(屬性)由這個(gè)對(duì)象自己的行為(方法)來讀取和改變;
2).抽象:抽象就是找出一些事物的相似和共性之處,然后將這些事物歸為一個(gè)類,這個(gè)類只考慮這些事物的相似和共性之處
3). 繼承:繼承是子類自動(dòng)共享父類數(shù)據(jù)和方法的機(jī)制,這是類之間的一種關(guān)系,提高了軟件的可重用性和可擴(kuò)展性。
4).多態(tài): 多態(tài)性增強(qiáng)了軟件的靈活性和擴(kuò)展性。
4. 請(qǐng)簡(jiǎn)述abstract class和interface的區(qū)別。
答:含有abstract修飾符的class即為抽象類,接口(interface)可以說成是抽象類的一種特例,接口中的所有方法都必須是抽象的。
兩者的語法區(qū)別:
1).抽象類可以有構(gòu)造方法,接口中不能有構(gòu)造方法。
2).抽象類中可以包含非抽象的普通方法,接口不能。
3). 抽象類中可以包含靜態(tài)方法,接口中不能
4). 一個(gè)類可以實(shí)現(xiàn)多個(gè)接口,但只能繼承一個(gè)抽象類。
兩者的應(yīng)用上的區(qū)別:
1).接口更多在系統(tǒng)框架設(shè)計(jì)方法發(fā)揮作用。
2).抽象類在代碼實(shí)現(xiàn)方面發(fā)揮作用,實(shí)現(xiàn)代碼的重用。
5.下面代碼有錯(cuò)嗎?有何錯(cuò)誤呢?
、. abstract class Name {
private String name;
public abstract boolean isStupidName(String name) {}
}
答:大俠們,這有何錯(cuò)誤?
答案: 錯(cuò)。abstract method(抽象方法)必須以分號(hào)結(jié)尾,且不帶花括號(hào)。(沒有方法體)
、. abstract class Something {private abstract String doSomething (); }
答:這好像沒什么錯(cuò)吧?
答案: 錯(cuò)。abstract的methods(方法)不能以private修飾。abstract的methods(方法)就是讓子類implement(實(shí)現(xiàn))具體細(xì)節(jié)的,怎么可以用private把a(bǔ)bstract私有化呢
③. class Something {int i;public void doSomething() {System.out.println("i = " + i);}}
答:有什么錯(cuò)呢? 看不出來啊。
答案: 正確。輸出的是"i = 0"。int i屬於instant variable (實(shí)例變量,或叫成員變量)。instant variable有默認(rèn)值。int的默認(rèn)值是0。
二、SQL Server部分 1. 可以用什么來確保表格里的字段只接受特定范圍里的值?
答:這個(gè)問題可以用多種方式來回答,但是只有一個(gè)答案是“好”答案:Check約束,它在數(shù)據(jù)庫表格里被定義,用來限制輸入該列的值。觸發(fā)器也可以被用來限制數(shù)據(jù)庫表格里的字段能夠接受的值,但是這種辦法要求觸發(fā)器在表格里被定義,這可能會(huì)在某些情況下影響到性能。因此,微軟建議使用Check限制而不是其他的方式來限制域的完整性。 2.什么是主鍵?什么是外鍵?
答:主鍵是表格里的(一個(gè)或多個(gè))字段,只用來定義表格里的行;主鍵里的值總是唯一的。外鍵是一個(gè)用來建立兩個(gè)表格之間關(guān)系的約束。這種關(guān)系一般都涉及一個(gè)表格里的主鍵字段與另外一個(gè)表格(盡管可能是同一個(gè)表格)里的一系列相連的字段。那么這些相連的字段就是外鍵。
3.什么是事務(wù)?有哪四個(gè)屬性(原則)?
答:事務(wù)是作為一個(gè)邏輯單元執(zhí)行的一系列操作,要么全都執(zhí)行,要么全都不執(zhí)行。一個(gè)邏輯工作單元必須有四個(gè)屬性,稱為 ACID(原子性、一致性、隔離性和持久性)屬性,只有這樣才能成為一個(gè)事務(wù)。
附:
原子性:事務(wù)必須是原子工作單元;對(duì)于其數(shù)據(jù)修改,
一致性:事務(wù)在完成時(shí),必須使所有的數(shù)據(jù)都保持一致狀態(tài)。
隔離性:由并發(fā)事務(wù)所作的修改必須與任何其它并發(fā)事務(wù)所作的修改隔離。
持久性:事務(wù)完成之后,它對(duì)于系統(tǒng)的影響是永久性的。
4.觸發(fā)器和存儲(chǔ)過程有何區(qū)別?(講解時(shí)回顧觸發(fā)器和存儲(chǔ)過程分別是什么)
答:只有一個(gè)區(qū)別:存儲(chǔ)過程,你調(diào)用的時(shí)候才會(huì)執(zhí)行
觸發(fā)器就是你設(shè)定了數(shù)據(jù)庫里比如刪除,修改,插入時(shí),就會(huì)自動(dòng)觸發(fā)執(zhí)行
拓展:計(jì)算機(jī)三級(jí)軟件測(cè)試技術(shù)沖刺題
一、判斷題
1.軟件測(cè)試的目的是盡可能多的找出軟件的缺陷。(Y)
2.Beta測(cè)試是驗(yàn)收測(cè)試的一種。(Y)
3.驗(yàn)收測(cè)試是由最終用戶來實(shí)施的。(N)
4.項(xiàng)目立項(xiàng)前測(cè)試人員不需要提交任何工件。(Y)
5.單元測(cè)試能發(fā)現(xiàn)約80%的軟件缺陷。(Y)
6.代碼評(píng)審是檢查源代碼是否達(dá)到模塊設(shè)計(jì)的要求。(N)
7.自底向上集成需要測(cè)試員編寫驅(qū)動(dòng)程序。(Y)
8.負(fù)載測(cè)試是驗(yàn)證要檢驗(yàn)的系統(tǒng)的能力最高能達(dá)到什么程度。(N)
9.測(cè)試人員要堅(jiān)持原則,缺陷未修復(fù)完堅(jiān)決不予通過。(N)
10.代碼評(píng)審員一般由測(cè)試員擔(dān)任。(N)
11.我們可以人為的使得軟件不存在配置問題。(N)
12.集成測(cè)試計(jì)劃在需求分析階段末提交。(N)
13.測(cè)試是為了驗(yàn)證軟件已正確地實(shí)現(xiàn)了用戶的要求。(N)
14.白盒測(cè)試僅與程序的內(nèi)部結(jié)構(gòu)有關(guān),完全可以不考慮程序的功能要求。(Y)
15.黑盒測(cè)試的測(cè)試用例是根據(jù)程序內(nèi)部邏輯設(shè)計(jì)的。(N)
16.為了快速完成集成測(cè)試,采用一次性集成方式是適宜的。(N)
17.在軟件開發(fā)過程中,若能推遲暴露其中的錯(cuò)誤,則為修復(fù)和改正錯(cuò)誤所花費(fèi)的代價(jià)就會(huì)降低。(N)
二、多項(xiàng)選擇題
1.在面向類的度量中,下列哪些度量方式是屬于C&K套件的度量(ABCF).
面向?qū)ο蟮能浖こ蘌463頁C&K度量套件
A.每個(gè)類的加權(quán)方法
B.對(duì)象類之間的耦合
C.繼承樹的深度
D.類大小
E.特例化索引
F.方法中內(nèi)聚的缺乏
2.以下說法正確的有(BC).
A.等價(jià)類劃分和邊界值分析屬于白盒測(cè)試技術(shù).
B.基本路徑測(cè)試屬于白盒測(cè)試技術(shù).
C.在基本路徑測(cè)試中,可以通過流圖來計(jì)算環(huán)路復(fù)雜性.
D.樁模塊用于接收測(cè)試數(shù)據(jù),并把數(shù)據(jù)傳遞給要測(cè)試的模塊,然后打印相關(guān)結(jié)果.
E.在確認(rèn)測(cè)試中,測(cè)試是由用戶在開發(fā)者的場(chǎng)所來進(jìn)行,開發(fā)者對(duì)客戶進(jìn)行指導(dǎo),是在一個(gè)受控環(huán)境下進(jìn)行.
F.可以不進(jìn)行單元測(cè)試就開始集成測(cè)試,因?yàn)榧蓽y(cè)試會(huì)發(fā)現(xiàn)所有的問題.
3.下列哪些屬于集成測(cè)試的內(nèi)容(AB).
A.自頂向下集成
B.自底向上集成
C.回歸測(cè)試
D.壓力測(cè)試
4.以下哪些內(nèi)容是面向?qū)ο蠓治鏊娜蝿?wù)(ABCD).
A.標(biāo)識(shí)類(定義屬性和方法)
B.刻畫類的層次關(guān)系
C.標(biāo)識(shí)對(duì)象——對(duì)象關(guān)系
D.表示對(duì)象行為
5.我們可以將設(shè)計(jì)模式大致劃分為以下幾種類型(ABD).
A.創(chuàng)建型
B.行為型
C.變換型
D.結(jié)構(gòu)型
6.軟件產(chǎn)品與其它工業(yè)產(chǎn)品相比具有獨(dú)特的開發(fā)過程,這決定了我們需要使用軟件質(zhì)量保證的方法學(xué)和工具面對(duì)軟件質(zhì)量的各種特殊的挑戰(zhàn).那么,軟件開發(fā)過程的獨(dú)特性有(ACD).
A.軟件產(chǎn)品的高復(fù)雜性
B.與其它系統(tǒng)有接口
C.軟件產(chǎn)品的不可見性
D.檢測(cè)缺陷的機(jī)會(huì)只限于產(chǎn)品開發(fā)階段
E.需要協(xié)同工作
7.測(cè)試設(shè)計(jì)員的職責(zé)有(ABC).
A.制定測(cè)試計(jì)劃
B.設(shè)計(jì)測(cè)試用例
C.設(shè)計(jì)測(cè)試過程,腳本
D.評(píng)估測(cè)試活動(dòng)
8.軟件工程研究的對(duì)象包括(ABE).
A.質(zhì)量
B.過程
C.技術(shù)
D.數(shù)據(jù)庫
E.工具
9.下列說法正確的是(A).
A.管理,分析,控制現(xiàn)實(shí)世界中發(fā)生的事件的程序稱為實(shí)時(shí)軟件
B.軟件項(xiàng)目開發(fā)的成功,取決于工具和硬件設(shè)備的優(yōu)劣
C.我們已經(jīng)建造了軟件的標(biāo)準(zhǔn)和規(guī)程,我們就能生產(chǎn)高質(zhì)量的軟件產(chǎn)品
D.在項(xiàng)目的進(jìn)度告急的時(shí)候,解決辦法之一就是加派人手
10.下列選項(xiàng)中,屬于項(xiàng)目管理的對(duì)象是(ABCE).
A.人員
B.產(chǎn)品
C.過程
D.設(shè)備
E.項(xiàng)目
11.衡量軟件項(xiàng)目規(guī)模的參數(shù)有(ACD).
A.代碼行數(shù)
B.項(xiàng)目周期
C.文檔頁數(shù)
D.功能點(diǎn)數(shù)量
12.軟件度量可以獲得的信息包括(ABCD).
A.軟件質(zhì)量
B.軟件規(guī)模
C.軟件過程改進(jìn)
D.軟件性能
13.定義風(fēng)險(xiǎn)參數(shù)的考慮有(ABCD).
A.軟件失效發(fā)生的機(jī)率
B.軟件功能復(fù)雜性
C.軟件失效產(chǎn)生的影響
D.軟件周期長(zhǎng)短
14.軟件質(zhì)量保證的有效方式有(ABD).
A.軟件技術(shù)評(píng)審
B.軟件項(xiàng)目管理
C.安排項(xiàng)目計(jì)劃
D.軟件測(cè)試
15.軟件配置管理的主要工作包括(AD).軟件質(zhì)量管理書第4章P46頁
A.版本控制
B.質(zhì)量保證
C.配置審計(jì)
D.變更控制
16.下列選項(xiàng)中,哪些為軟件基本測(cè)試策略框架(CD).
A.白盒測(cè)試
B.黒盒測(cè)試
C.大爆炸測(cè)試
D.增量式測(cè)試
17.軟件度量的基本維度有哪些(ACDE).
A.軟件大小
B.軟件缺陷
C.軟件時(shí)間
D.軟件工作量
E.軟件質(zhì)量
18.一些缺陷會(huì)破壞同級(jí)評(píng)審的成功,它們對(duì)于審查來說發(fā)生得更為普遍,在評(píng)審中需要避免下列的哪些缺陷(ABCDE).
A.參與評(píng)審的人不了解評(píng)審過程
B.評(píng)審過程沒有被遵循
C.合適的人沒有參加評(píng)審
D.評(píng)審會(huì)陷入對(duì)問題的解決上
E.評(píng)審的焦點(diǎn)放在文檔形式而不是內(nèi)容本身
19.下列哪些是軟件配置管理的功能(ACDE).
A.版本控制
B.過程控制
C.工作空間管理
D.異地開發(fā)支持E.變更請(qǐng)求管理
20.典型的審查包包括下列的哪些選項(xiàng)(ABCDE).
A.將被審查的初始可交付產(chǎn)品,其中指明了需審查的部分
B.定義了可交付產(chǎn)品的規(guī)格說明的所有前期的文檔
C.用于驗(yàn)證初始可交付產(chǎn)品的測(cè)試文檔
D.相關(guān)標(biāo)準(zhǔn)或其他參考文檔
E.參與者需要的所有表格,如錯(cuò)誤清單和個(gè)人問題日志等
21.下面哪些項(xiàng)是軟件質(zhì)量管理和項(xiàng)目過程的標(biāo)準(zhǔn)與模型(ACD).
A.CMM
B.SEI
C.ISO
D.IEEE
E.SRI
22.下列項(xiàng)目中哪些是軟件過程改進(jìn)框架的內(nèi)容(ABCE).
A.軟件過程改進(jìn)架構(gòu)
B.軟件過程改進(jìn)規(guī)劃圖
C.軟件過程評(píng)估方法
D.軟件過程改進(jìn)環(huán)境
E.軟件過程改進(jìn)計(jì)劃
23.所有的同級(jí)評(píng)審都應(yīng)該遵守幾項(xiàng)基本的原則,從而對(duì)產(chǎn)品質(zhì)量和團(tuán)隊(duì)文化產(chǎn)生有益的影響,下列哪些是評(píng)審的指導(dǎo)原則(ABDE).
A.保持小型的評(píng)審小組
B.檢查你的自負(fù)傾向
C.努力發(fā)現(xiàn)問題并且解決問題
D.會(huì)議時(shí)間限制在兩小時(shí)左右
E.正式評(píng)審需要事先準(zhǔn)備
24.下面哪些是辨別過程是否規(guī)范的內(nèi)容(ABCDE).
A.過程是否文檔化,成員是否都已經(jīng)了解過程?
B.過程是否經(jīng)過培訓(xùn)和實(shí)施?
C.過程是否具有強(qiáng)制性?是否有相應(yīng)的機(jī)制與步驟來確保其實(shí)施?
D.過程是否有助于員工的工作?是否有相應(yīng)的機(jī)制來跟蹤過程的實(shí)施狀況?
E.管理者是否以團(tuán)隊(duì)實(shí)施過程的能力與成果為依據(jù)進(jìn)行評(píng)估與管理?
25.功能獨(dú)立性是模塊化和抽象以及信息隱藏的直接產(chǎn)物,衡量模塊獨(dú)立性的兩個(gè)標(biāo)準(zhǔn)是(CD).
A.求精
B.模塊可理解性
C.內(nèi)聚
D.耦合
26.下列哪些是面向?qū)ο笤O(shè)計(jì)的原則(ABCDE).
A.單一職責(zé)原則
B.開放-封閉原則
C.替換原則
D.依賴關(guān)系倒置原則
E.接口隔離原則
27.以下說法正確的有(BCE).
A.等價(jià)類劃分和邊界值分析屬于白盒測(cè)試技術(shù).
B.基本路徑測(cè)試屬于白盒測(cè)試技術(shù).
C.在基本路徑測(cè)試中,可以通過流圖來計(jì)算環(huán)路復(fù)雜性.
D.樁模塊用于接收測(cè)試數(shù)據(jù),并把數(shù)據(jù)傳遞給要測(cè)試的模塊,然后打印相關(guān)結(jié)果.
E.在UML類圖中,普通關(guān)聯(lián)關(guān)系一般表示為在一個(gè)類中持有另外一個(gè)類的成員變量.
F.在確認(rèn)測(cè)試中,測(cè)試是由用戶在開發(fā)者的場(chǎng)所來進(jìn)行,開發(fā)者對(duì)客戶進(jìn)行指導(dǎo),是在一個(gè)受控環(huán)境下進(jìn)行.
28.下面哪些是辨別過程是否規(guī)范的內(nèi)容(ABCDE).
A.過程是否文檔化,成員是否都已經(jīng)了解過程
B.過程是否經(jīng)過培訓(xùn)和實(shí)施
C.過程是否具有強(qiáng)制性,是否有相應(yīng)的機(jī)制與步驟來確保其實(shí)施
D.過程是否有助于員工的工作,是否有相應(yīng)的機(jī)制來跟蹤過程的實(shí)施狀況
E.管理者是否以團(tuán)隊(duì)實(shí)施過程的能力與成果為依據(jù)進(jìn)行評(píng)估與管理
29.軟件驗(yàn)收測(cè)試的合格通過準(zhǔn)則是(AC).
A.軟件需求分析說明書中定義的所有功能已全部實(shí)現(xiàn),性能指標(biāo)全部達(dá)到要求.
B.所有測(cè)試項(xiàng)沒有殘余一級(jí),二級(jí)和三級(jí)錯(cuò)誤.
C.立項(xiàng)審批表,需求分析文檔,設(shè)計(jì)文檔和編碼實(shí)現(xiàn)一致.
D.驗(yàn)收測(cè)試工件齊全.
30.軟件測(cè)試計(jì)劃評(píng)審會(huì)需要哪些人員參加(ABCD).
A.項(xiàng)目經(jīng)理
B.SQA負(fù)責(zé)人
C.配置負(fù)責(zé)人
D.測(cè)試組
【軟件工程師面試題小練帶參考答案】相關(guān)文章:
事業(yè)單位面試題目及參考答案02-24
大唐軟件java軟件工程師筆試題分享11-21
軟件工程師尷尬的面試11-08
軟件工程師職業(yè)規(guī)劃11-25
軟件工程師的職業(yè)規(guī)劃11-11