




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、前端開發(fā)工程師面試題開發(fā)工程師面試題開發(fā)工程師面試題篇11、解釋什么是隊列(queue) ,什么棧 (stack) ,有何區(qū)別 ?隊列是一種特殊的線性表,他按照先進先出的原則存儲數(shù)據(jù)。棧是一種數(shù)據(jù)結構,它按照后進先出的原則存儲數(shù)據(jù),先進入的數(shù)據(jù)被壓入棧底,最后的數(shù)據(jù)在棧頂,需要讀數(shù)據(jù)的時候從棧頂開始彈出數(shù)據(jù)。2、用C/C+域者Php,或,給出例子,解釋什么是異常(e_ception)?3、簡述HashMap、 HashSet、 HashTable 的區(qū)別。Hashtable 類Hashtable繼承Map口,實現(xiàn)一個 key-value映射的哈希表。任何非空 (non-null) 的對象都可作
2、為 key 或者 value 。HashMapHashMapf口 Hashtable類似,不同之處在于 HashMap1非同步的,并且允許 null ,即 null value 和 null key , null key 只能有一個。HashSet 類HashSet 繼承 Set 接口。Set 是一種不包含重復的元素的 Collection 。public 、 protect 和 private 的區(qū)別是什么 ?開發(fā)工程師面試題篇2試設計一個商品相關數(shù)據(jù)庫,要求包括商品類別、商品的基本信息,并完成下面的三個查詢。1、請寫出創(chuàng)建相關表的SQL語句。.使用標準SQL得到2021年1月份入庫的所有商
3、品信息。.使用標準SQL得到“Toy”分類下的所有商品信息。.使用標準SQL統(tǒng)計出所有包含商品價格低于100.00的分類。開發(fā)工程師面試題篇3_(n)_ 處的字句寫在答題紙的對應欄內。說明 某訂單管理系統(tǒng)的部分UM淺圖如圖1-1所示圖 4-1 訂單管理系統(tǒng)的部分類圖圖 1-1 中, Product 表示產(chǎn) 品, ProductList 表示所銷售產(chǎn)品的列表, Order表示產(chǎn)品訂單, 0rderltem 表示產(chǎn)品訂單中的一個條目, OrderList 表示訂單列表, SalesSystem 提供訂單管理系統(tǒng)的操作接口。各個類的部分屬性和方法說明如表 1-1 所示。表 1-1類成員說明Produ
4、ctListArrayList(Product) productsProduct StringString code產(chǎn)品編號description產(chǎn)品描述double price產(chǎn)品單價Boolean equals(Object object)若兩個產(chǎn)品相同則返回 true ,否則返回 falseOrderltemProduct product訂單項中的產(chǎn)品int quantity產(chǎn)品的訂購數(shù)量Product getProduct()獲取訂單項中的產(chǎn)品OrderArrayList(Orderlten) items訂單中包含的訂單項OrderListArrayList(Order)orders訂
5、單void addOrder(0rder order)向訂單列表中添加新訂單int getNumberOfOrders()獲取訂單列表中的訂單總數(shù)SalesSystemProductList catalog產(chǎn)品目錄OrderList sales訂單列表void statistic()依次統(tǒng)計產(chǎn)品目錄中每個產(chǎn)品的訂購總量,并打印 出每個產(chǎn)品的編號、說明、訂購總量和訂購金額可以使用類.util 。 ArrayList 來實現(xiàn)對象的聚集關系,如圖 4-1 中OrderList 與 Order 之間的聚集關系。 for-each 循環(huán)提供了一種遍歷對象集合的簡單方法。在for-each 循環(huán)中,可以指
6、定需要遍歷的對象集合以及用來接收集合中每個元素的變量,其語法如下: for( 用來接收集合中元素的變量 : 需要遍歷的對象集合 ) ,如果要使用 for-each 循環(huán)來遍歷對象集合,那么包含該對象集合的類必須實現(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(關閉)、Opening(正在打開)、StayOpen(保持打開)、Closing(正在關閉)五種狀態(tài)。觸發(fā)狀 態(tài)的轉換事件有click 、 complete 和 timeout 三種。事件與其相應的狀態(tài)轉換如圖 2-1 所示。圖 2-1 傳輸門響應事件與其狀態(tài)轉換圖下面的 代碼 1 與 代碼 2 分別用兩種不同的設計思路對傳輸門進行狀態(tài) 模擬,請?zhí)钛a代碼中的空缺。 代碼 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; /設置傳輸門當前狀態(tài)public void getState()/ 此處代碼省略,本方法輸出狀態(tài)字符串,/例如,當前狀態(tài)為CLOSED時,輸出字符串為“ CLOSEDpubli
11、c void click() / 發(fā)生 click 事件時進行狀態(tài)轉換if (1) ) setState(OPENING);else if ( (2) ) setState(CLOSING);else if (3) ) setState(STAYOPEN);/ 發(fā)生 timeout 事件時進行狀態(tài)轉換public void timeout() if (state = OPEN) setState(CLOSING); public void complete() / 發(fā)生 complete 事件時進行狀態(tài)轉換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;/ 設置傳輸門當前狀態(tài)public void setState(Door
14、State state) this.state = state;public void getState() / 根據(jù)當前狀態(tài)輸出對應的狀態(tài)字符串System.out.println(state.getClass().getName();public void click() (4) ; /發(fā)生 click 事件時進行狀態(tài)轉換public void timeout() (5) ;/發(fā)生 timeout 事件時進行狀態(tài)轉換public void complete() (6) ;/發(fā)生 complete 事件時進行狀態(tài)轉換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等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
評論
0/150
提交評論