前端開發(fā)工程師面試題JAVA開發(fā)工程師面試題_第1頁
前端開發(fā)工程師面試題JAVA開發(fā)工程師面試題_第2頁
前端開發(fā)工程師面試題JAVA開發(fā)工程師面試題_第3頁
前端開發(fā)工程師面試題JAVA開發(fā)工程師面試題_第4頁
前端開發(fā)工程師面試題JAVA開發(fā)工程師面試題_第5頁
已閱讀5頁,還剩5頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請(qǐng)進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

1、前端開發(fā)工程師面試題開發(fā)工程師面試題開發(fā)工程師面試題篇11、解釋什么是隊(duì)列(queue) ,什么棧 (stack) ,有何區(qū)別 ?隊(duì)列是一種特殊的線性表,他按照先進(jìn)先出的原則存儲(chǔ)數(shù)據(jù)。棧是一種數(shù)據(jù)結(jié)構(gòu),它按照后進(jìn)先出的原則存儲(chǔ)數(shù)據(jù),先進(jìn)入的數(shù)據(jù)被壓入棧底,最后的數(shù)據(jù)在棧頂,需要讀數(shù)據(jù)的時(shí)候從棧頂開始彈出數(shù)據(jù)。2、用C/C+域者Php,或,給出例子,解釋什么是異常(e_ception)?3、簡述HashMap、 HashSet、 HashTable 的區(qū)別。Hashtable 類Hashtable繼承Map口,實(shí)現(xiàn)一個(gè) key-value映射的哈希表。任何非空 (non-null) 的對(duì)象都可作

2、為 key 或者 value 。HashMapHashMapf口 Hashtable類似,不同之處在于 HashMap1非同步的,并且允許 null ,即 null value 和 null key , null key 只能有一個(gè)。HashSet 類HashSet 繼承 Set 接口。Set 是一種不包含重復(fù)的元素的 Collection 。public 、 protect 和 private 的區(qū)別是什么 ?開發(fā)工程師面試題篇2試設(shè)計(jì)一個(gè)商品相關(guān)數(shù)據(jù)庫,要求包括商品類別、商品的基本信息,并完成下面的三個(gè)查詢。1、請(qǐng)寫出創(chuàng)建相關(guān)表的SQL語句。.使用標(biāo)準(zhǔn)SQL得到2021年1月份入庫的所有商

3、品信息。.使用標(biāo)準(zhǔn)SQL得到“Toy”分類下的所有商品信息。.使用標(biāo)準(zhǔn)SQL統(tǒng)計(jì)出所有包含商品價(jià)格低于100.00的分類。開發(fā)工程師面試題篇3_(n)_ 處的字句寫在答題紙的對(duì)應(yīng)欄內(nèi)。說明 某訂單管理系統(tǒng)的部分UM淺圖如圖1-1所示圖 4-1 訂單管理系統(tǒng)的部分類圖圖 1-1 中, Product 表示產(chǎn) 品, ProductList 表示所銷售產(chǎn)品的列表, Order表示產(chǎn)品訂單, 0rderltem 表示產(chǎn)品訂單中的一個(gè)條目, OrderList 表示訂單列表, SalesSystem 提供訂單管理系統(tǒng)的操作接口。各個(gè)類的部分屬性和方法說明如表 1-1 所示。表 1-1類成員說明Produ

4、ctListArrayList(Product) productsProduct StringString code產(chǎn)品編號(hào)description產(chǎn)品描述double price產(chǎn)品單價(jià)Boolean equals(Object object)若兩個(gè)產(chǎn)品相同則返回 true ,否則返回 falseOrderltemProduct product訂單項(xiàng)中的產(chǎn)品int quantity產(chǎn)品的訂購數(shù)量Product getProduct()獲取訂單項(xiàng)中的產(chǎn)品OrderArrayList(Orderlten) items訂單中包含的訂單項(xiàng)OrderListArrayList(Order)orders訂

5、單void addOrder(0rder order)向訂單列表中添加新訂單int getNumberOfOrders()獲取訂單列表中的訂單總數(shù)SalesSystemProductList catalog產(chǎn)品目錄OrderList sales訂單列表void statistic()依次統(tǒng)計(jì)產(chǎn)品目錄中每個(gè)產(chǎn)品的訂購總量,并打印 出每個(gè)產(chǎn)品的編號(hào)、說明、訂購總量和訂購金額可以使用類.util 。 ArrayList 來實(shí)現(xiàn)對(duì)象的聚集關(guān)系,如圖 4-1 中OrderList 與 Order 之間的聚集關(guān)系。 for-each 循環(huán)提供了一種遍歷對(duì)象集合的簡單方法。在for-each 循環(huán)中,可以指

6、定需要遍歷的對(duì)象集合以及用來接收集合中每個(gè)元素的變量,其語法如下: for( 用來接收集合中元素的變量 : 需要遍歷的對(duì)象集合 ) ,如果要使用 for-each 循環(huán)來遍歷對(duì)象集合,那么包含該對(duì)象集合的類必須實(shí)現(xiàn)接口 .util.Iterable 。程序 1-1 和程序 1-2 分別給出了類OrderList 和方法statistic 的代碼。 程序 1-1import .util._;public class OrderList _(1)_private ArrayList orders;public OrderListO this.orders = new ArrayList(Order

7、) 0;public void addOrder(Order order) this.orders, add (order);public Iterator iteratorO return _(2)_;public int getNunberOfOrders() return this.orders.size(); 程序 1-2import .util._;public class SalesSystem private ProductList catalog;private OrderList sales;private static PrintWriter stdOut = new Pr

8、intWriter(System.out true);public void statistic() for(Product product : _(3)_ int number = 0;for(Order order : _(4)_for(_(5)_: order) ifnumbe r += item.getQuantity();stdOut.println(product.getCode() +” ”+ product.getDescription() +” ”+ number + ” ” + number _product.getPrice();/ 其余的方法未列出 說明 傳輸門是傳輸系

9、統(tǒng)中的重要裝置。傳輸門具有Open(打開)、Closed(關(guān)閉)、Opening(正在打開)、StayOpen(保持打開)、Closing(正在關(guān)閉)五種狀態(tài)。觸發(fā)狀 態(tài)的轉(zhuǎn)換事件有click 、 complete 和 timeout 三種。事件與其相應(yīng)的狀態(tài)轉(zhuǎn)換如圖 2-1 所示。圖 2-1 傳輸門響應(yīng)事件與其狀態(tài)轉(zhuǎn)換圖下面的 代碼 1 與 代碼 2 分別用兩種不同的設(shè)計(jì)思路對(duì)傳輸門進(jìn)行狀態(tài) 模擬,請(qǐng)?zhí)钛a(bǔ)代碼中的空缺。 代碼 1public class Door public static final int CLOSED = 1;public static final int OPENIN

10、G = 2;public static final int OPEN = 3;public static final int CLOSING = 4;public static final int STAYOPEN = 5;private int state = CLOSED;/ 定義狀態(tài)變量,用不同的整數(shù)表示不同狀態(tài)private void setState(int state)this.state = state; /設(shè)置傳輸門當(dāng)前狀態(tài)public void getState()/ 此處代碼省略,本方法輸出狀態(tài)字符串,/例如,當(dāng)前狀態(tài)為CLOSED時(shí),輸出字符串為“ CLOSEDpubli

11、c void click() / 發(fā)生 click 事件時(shí)進(jìn)行狀態(tài)轉(zhuǎn)換if (1) ) setState(OPENING);else if ( (2) ) setState(CLOSING);else if (3) ) setState(STAYOPEN);/ 發(fā)生 timeout 事件時(shí)進(jìn)行狀態(tài)轉(zhuǎn)換public void timeout() if (state = OPEN) setState(CLOSING); public void complete() / 發(fā)生 complete 事件時(shí)進(jìn)行狀態(tài)轉(zhuǎn)換if (state = OPENING) setState(OPEN);else if

12、(state = CLOSING) setState(CLOSED);public static void main(String args)Door aDoor = new Door();aDoor.getState();aDoor.click();aDoor.getState();aDplete();aDoor.getState();aDoor.click();aDoor.getState();aDoor.click();aDoor.getState();return; 代碼 2public class Door public final DoorState CLOSED = new Do

13、orClosed(this);public final DoorState OPENING = new DoorOpening(this);public final DoorState OPEN = new DoorOpen(this);public final DoorState CLOSING = new DoorClosing(this);public final DoorState STAYOPEN = new DoorStayOpen(this);private DoorState state = CLOSED;/ 設(shè)置傳輸門當(dāng)前狀態(tài)public void setState(Door

14、State state) this.state = state;public void getState() / 根據(jù)當(dāng)前狀態(tài)輸出對(duì)應(yīng)的狀態(tài)字符串System.out.println(state.getClass().getName();public void click() (4) ; /發(fā)生 click 事件時(shí)進(jìn)行狀態(tài)轉(zhuǎn)換public void timeout() (5) ;/發(fā)生 timeout 事件時(shí)進(jìn)行狀態(tài)轉(zhuǎn)換public void complete() (6) ;/發(fā)生 complete 事件時(shí)進(jìn)行狀態(tài)轉(zhuǎn)換public static void main(String args)Door aDoor = new Door();aDoor.getState();aDoor.click();aDoor.getState();aDplete();aDoor.getState();aDoor.timeout();aDoor.getState();return;public abstract class DoorState / 定義所有狀態(tài)類的基類protected Door door ;public DoorState(Door

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請(qǐng)下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請(qǐng)聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(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ì)自己和他人造成任何形式的傷害或損失。

評(píng)論

0/150

提交評(píng)論