• <output id="aynwq"><form id="aynwq"><code id="aynwq"></code></form></output>

    <mark id="aynwq"><option id="aynwq"></option></mark>
  • <mark id="aynwq"><option id="aynwq"></option></mark><label id="aynwq"><dl id="aynwq"></dl></label>
  • 學習啦>創業指南>職場>面試題>

    JAVA開發工程師面試題

    時間: 護托1061 分享

      用C/C++或者Php,或Java,給出例子,解釋什么是異常(exception)?下面就由學習啦小編為大家介紹一下JAVA開發工程師面試題的文章,歡迎閱讀。

      JAVA開發工程師面試題篇1

      1、解釋什么是隊列(queue),什么棧(stack),有何區別?

      隊列是一種特殊的線性表,他按照先進先出的原則存儲數據。

      棧是一種數據結構,它按照后進先出的原則存儲數據,先進入的數據被壓入棧底,最后的數據在棧頂,需要讀數據的時候從棧頂開始彈出數據。

      2、用C/C++或者Php,或Java,給出例子,解釋什么是異常(exception)?

      3、簡述HashMap、HashSet、HashTable的區別。

      Hashtable類

      Hashtable繼承Map接口,實現一個key-value映射的哈希表。任何非空(non-null)的對象都可作為key或者value。

      HashMap類

      HashMap和Hashtable類似,不同之處在于HashMap是非同步的,并且允許null,即null value和null key,null key只能有一個。

      HashSet類

      HashSet繼承Set接口。

      Set是一種不包含重復的元素的Collection。

      4、public、protect和private的區別是什么?

      JAVA開發工程師面試題篇2

      試設計一個商品相關數據庫,要求包括商品類別、商品的基本信息,并完成下面的三個查詢。

      1、請寫出創建相關表的SQL語句。

      2. 使用標準SQL,得到2008年1月份入庫的所有商品信息。

      3. 使用標準SQL,得到“Toy”分類下的所有商品信息。

      4. 使用標準SQL,統計出所有包含商品價格低于100.00的分類。

      JAVA開發工程師面試題篇3

      閱讀下列說明、圖以及Java程序,將應填入__(n)__處的字句寫在答題紙的對應欄內。

      1、[說明]

      某訂單管理系統的部分UML類圖如圖1-1所示

      圖4-1 訂單管理系統的部分類圖

      圖1-1中,Product表示產 品,ProductList表示所銷售產品的列表,Order表示產品訂單,0rderltem表示產品訂單中的一個條目,OrderList表示訂單列 表,SalesSystem提供訂單管理系統的操作接口。各個類的部分屬性和方法說明如表1-1所示。

      表1-1

      類

      成員

      說明

      ProductList

      ArrayList(Product) products

      Product String

      String code

      產品編號

      description

      產品描述

      double price

      產品單價

      Boolean equals(Object object)

      若兩個產品相同則返回true,否則返回false

      Orderltem

      Product product

      訂單項中的產品

      int quantity

      產品的訂購數量

      Product getProduct()

      獲取訂單項中的產品

      Order

      ArrayList(Orderlten) items

      訂單中包含的訂單項

      OrderList

      ArrayList(Order)orders

      訂單

      void addOrder(0rder order)

      向訂單列表中添加新訂單

      int getNumberOfOrders()

      獲取訂單列表中的訂單總數

      SalesSystem

      ProductList catalog

      產品目錄

      OrderList sales

      訂單列表

      void statistic()

      依次統計產品目錄中每個產品的訂購總量,并打印 出每個產品的編號、說明、訂購總量和訂購金額

      可以使用類java.util。ArrayList來實現對象的聚集關系,如圖4-1中OrderList與Order之間的聚集關系。for-each循環提供了一種遍歷對象集合的簡單方法。在for-each循環中,可以指定需要遍歷的對象集合以及用來接收集合中每個元素的變量,其語法如下: for(用來接收集合中元素的變量:需要遍歷的對象集合),如果要使用for-each循環來遍歷對象集合,那么包含該對象集合的類必須實現接口java.util.Iterable。Java程序1-1和Java程序1-2分別給出了類OrderList和方法statistic的Java代碼。

      [Java程序1-1]

      import java.util.*;

      public class OrderList __(1)__ {

      private ArrayList orders;

      public OrderListO {

      this.orders = new ArrayList(Order) 0;

      }

      public void addOrder(Order order) {

      this.orders, add (order);

      }

      public Iterator iteratorO {

      return __(2)__;

      }

      public int getNunberOfOrders() {

      return this.orders. size();

      }

      }

      [Java程序1-2]

      import java.util.*;

      public class SalesSystem {

      private ProductList catalog;

      private OrderList sales;

      private static PrintWriter stdOut = new PrintWriter(System.out,true);

      public void statistic(){

      for(Product product : __(3)__{

      int number = 0;

      for(Order order : __(4)__ {

      for(__(5)__ : order){

      if

      numbe r += item.getQuantity();

      }

      }

      stdOut.println(product.getCode() + ” ”

      + product.getDescription() + ” ”

      + number + ” ” + number *product.getPrice());

      }

      }

      //其余的方法未列出

      }

      2、[說明]

      傳輸門是傳輸系統中的重要裝置。傳輸門具有 Open(打開)、Closed(關閉)、Opening(正在打開)、StayOpen(保持打開)、Closing(正在關閉)五種狀態。觸發狀態的轉換事件有 click、complete 和 timeout 三種。事件與其相應的狀態轉換如圖 2-1 所示。

      圖 2-1 傳輸門響應事件與其狀態轉換圖

      下面的[Java 代碼 1]與[Java 代碼 2]分別用兩種不同的設計思路對傳輸門進行狀態模擬,請填補代碼中的空缺。

      [Java 代碼 1]

      public class Door {

      public static final int CLOSED = 1;

      public static final int OPENING = 2;

      public static final int OPEN = 3;

      public static final int CLOSING = 4;

      public static final int STAYOPEN = 5;

      private int state = CLOSED;//定義狀態變量,用不同的整數表示不同狀態

      private void setState(int state){this.state = state;} //設置傳輸門當前狀態

      public void getState(){

      // 此處代碼省略,本方法輸出狀態字符串,

      // 例如,當前狀態為 CLOSED 時,輸出字符串為”CLOSED”

      }

      public void click() { //發生 click 事件時進行狀態轉換

      if ((1) ) setState(OPENING);

      else if ( (2) ) setState(CLOSING);

      else if ((3) ) setState(STAYOPEN);

      //發生 timeout 事件時進行狀態轉換

      public void timeout(){ if (state == OPEN) setState(CLOSING); }

      public void complete(){ //發生 complete 事件時進行狀態轉換

      if (state == OPENING) setState(OPEN);

      else if (state == CLOSING) setState(CLOSED);

      }

      public static void main(String [] args){

      Door aDoor = new Door();

      aDoor.getState();

      aDoor.click();

      aDoor.getState();

      aDoor.complete();

      aDoor.getState();

      aDoor.click();

      aDoor.getState();

      aDoor.click();

      aDoor.getState();

      return;

      }

      }

      [Java 代碼 2]

      public class Door {

      public final DoorState CLOSED = new DoorClosed(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;

      //設置傳輸門當前狀態

      public void setState(DoorState state){ this.state = state;}

      public void getState(){ //根據當前狀態輸出對應的狀態字符串

      System.out.println(state.getClass().getName());

      }

      public void click(){ (4) ;} //發生 click 事件時進行狀態轉換

      public void timeout(){ (5) ;}//發生 timeout 事件時進行狀態轉換

      public void complete(){ (6) ;}//發生 complete 事件時進行狀態轉換

      public static void main(String[] args){

      Door aDoor = new Door();

      aDoor.getState();

      aDoor.click();

      aDoor.getState();

      aDoor.complete();

      aDoor.getState();

      aDoor.timeout();

      aDoor.getState();

      return;

      }

      }

      public abstract class DoorState { //定義所有狀態類的基類

      protected Door door ;

      public DoorState(Door door) {this.door = door;}

      public void click() {}

      public void complete() {}

      public void timeout() {}

      }

      class DoorClosed extends DoorState{ //定義一個基本的 Closed 狀態

      public DoorClosed(Door door) { super(door); }

      public void click() { (7) ; }

      //該類定義的其余代碼省略

      }

      //其余代碼省略

    JAVA開發工程師面試題

    用C/C++或者Php,或Java,給出例子,解釋什么是異常(exception)?下面就由學習啦小編為大家介紹一下JAVA開發工程師面試題的文章,歡迎閱讀。 JAVA開發工程師面試題篇1 1、解釋什么是隊列(queue),什么棧(stack),有何區別? 隊列是一種特
    推薦度:
    點擊下載文檔文檔為doc格式

    精選文章

    • 熱門的高級Java面試題
      熱門的高級Java面試題

      可變參數,斷言,垃圾回收,初始化器,令牌化,日期,日歷等等都是Java核心問題。下面就由學習啦小編為大家介紹一下熱門的高級Java面試題的文章,歡

    • Java高級工程師面試題目
      Java高級工程師面試題目

      Java的應用可以說是無處不在,從桌面辦公應用到網絡數據庫等應用,從PC到嵌入式移動平臺,從Java小應用程序(Applet)到架構龐大的J2EE企業級解決方案,處處

    • Java服務器端開發面試題
      Java服務器端開發面試題

      當然對于一些大公司,基礎知識可能不是最被看重的,關鍵是學習能力,獨立解決問題的能力,是否是一個靈性的人,我一直覺得我們程序員是在創造一個

    • java Io流面試題和選擇題
      java Io流面試題和選擇題

      Java對象的序列化指將一個java對象寫入OI流中,與此對應的是,對象的反序列化則從IO流中恢復該java對象。下面就由學習啦小編為大家介紹一下java Io流面試

    3152043 主站蜘蛛池模板: 蜜臀AV在线播放一区二区三区| 99久热只有精品视频免费看| 猫咪www免费人成网站| 在线无码午夜福利高潮视频| 亚洲最大激情中文字幕| 欧美videos极品| 日本三级2021最新理论在线观看| 四虎AV永久在线精品免费观看| jealousvue熟睡入侵中| 欧美性大战久久久久久| 国产在线19禁在线观看| 一级特黄aaa大片在| 波多野吉衣AV无码| 国产成人精品视频网站| 中文字幕一区二区三区有限公司 | av片在线观看| 欧美人与动zooz| 国产一区二区三区乱码在线观看| 一个人看的www免费高清中文字幕| 欧美激情综合色综合啪啪五月 | 亚洲制服丝袜中文字幕| 青青草国产在线观看| 富二代app免费下载安装ios二维码| 亚洲特级黄色片| 青青草国产精品欧美成人| 女人笫一次一级毛片| 亚洲人成电影网站| 老子影院午夜伦手机不卡无| 国模精品一区二区三区| 久久成人国产精品一区二区| 真实国产乱子伦久久| 国产白浆视频在线播放| 三级台湾电影在线| 欧美日韩一区二区三区四区| 国产乱人伦偷精精品视频 | 男男gay做爽爽视频| 国产精品igao视频网网址| 中文在线观看国语高清免费| 欧美成年黄网站色视频| 国产91最新在线| **aa级毛片午夜在线播放|