JavaOOP內測

ACCP8.0內部測試

 

 

 

 

 

學期: S2

 

模塊:S2

 

 

 

考試時間: 120分鐘

 

總分數:100分

 

 

             

 

 

 

注意:        1、請勿在試卷上留下筆跡

                  2、交卷時試題和答案均要上交


 

《使用Java實現面向對象編程》內部測試機試題

 

一、語言和環境

 

A、實現語言

 

  Java

 

B、環境要求

 

  MyEclipse 10

二、功能要求

開發陽光旅行網app中用戶下單功能,可實現用戶添加訂單並完善出行人信息、修改訂單,刪除訂單以及打印行程信息等功能。

具體功能要求如下:

(1)顯示系統主菜單

包括添加出行訂單、查看我的出行訂單、修改訂單信息、刪除出行人、查看行程、退出系統6項功能,其他功能本項目不做要求,當用戶選擇功能編號後可進入執行相應功能。執行結果如圖1所示。

圖1 主菜單

(2)添加出行訂單

填寫出行日期、聯繫人手機號碼、循環錄入出行人信息。

出行人信息包括:

Ø  出行人類別:成人、兒童(1.2m以下)、老人(65歲以上)

Ø  姓名

Ø  年齡(如選擇類別爲老人,輸入年齡不足65歲的,顯示提示信息“對不起,老人訂單年齡需爲65歲以上!”)

Ø  如果是兒童,需確定是否佔牀

每成功錄入一條出行人信息後,顯示出其詳細信息,並計算出行金額。定價如下:

Ø  成人:2000元/人

Ø  兒童:免費,如需佔牀另加30元

Ø  老人:半價,即1000元/人

當一條出行人信息錄入完畢後,提示“是否繼續添加(Y/N)?”,此處不區分大小寫,當輸入y或Y時繼續錄入下一條,否則顯示訂單信息,包括:

Ø  出行日期

Ø  聯繫人手機號碼

Ø  訂單總金額(即所有出行人定單金額之和)

最後顯示主菜單。執行效果如圖2所示。

圖2 添加出行訂單

 

(3)查看我的出行訂單信息

查看我的出行訂單:查看所錄入的訂單信息。包括出行日期、聯繫人手機號碼、所有出行人信息,運行效果如圖3所示。

圖3 查看我的出行訂單

 

(4)修改行程信息

可修改出行日期、聯繫人手機號碼,要求手機號碼必須爲11位,否則拋出異常信息,提示“手機號碼必須爲11位”,運行效果如果4所示。

圖4 手機號碼不是11位

正確修改後,顯示修改後的信息,並提示“修改成功!”。如圖5所示。

                   圖5 修改訂單成功

(5)刪除出行人

填寫要刪除的出行人姓名,執行刪除操作,刪除成功後給出提示“刪除成功!”,如圖6所示。如果輸入姓名錯誤,則提示“對不起,定單中不包含此遊客信息!”如圖7所示。

圖6   刪除出行人成功

圖7 刪除出行人失敗

 

(6)查看行程

顯示本次旅行行程信息。即讀取“旅遊行程.txt”文件(素材提供),顯示在控制檯。運行效果如圖8所示。

圖8 查看行程

(7)退出系統

     退出當前系統,顯示“歡迎下次再來。”如圖9所示。

 

三、要求與實現步驟

(一)不使用數據庫,使用對象和集合存儲數據

(二)定義實體類(成人訂單、兒童訂單、老人訂單),兒童訂單、老人訂單爲成人訂單的子類。實體類至少包含但不侷限於以上3個。

(三)在各實體類中均需實現各自計算訂單價格、顯示訂單信息的方法,使用方法的重寫。

(四)定義工具類,實現查看我的出行訂單、添加訂單、修改行程信息、刪除出行人、查看行程等方法。需使用到對象傳參。

(五)使用泛型集合存儲所有出行人信息,使用集合的遍歷實現查看訂單信息、統計訂單總金額、刪除出行人等功能。

(六)顯示信息時,只有兒童出行人需顯示是否佔座,需使用面向對象多態實現。

(七)修改行程信息時,當手機號碼錄入錯誤時需使用throw手動拋出異常。

(八)使用I/O技術實現文件的讀取功能,將文本文件“行程信息.txt”中的內容顯示到控制檯。

(九)定義測試類,完成項目功能菜單以及整體流程,調用相應方法實現具體功能。

 

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章