




版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、精選優(yōu)質(zhì)文檔-傾情為你奉上精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)專心-專注-專業(yè)精選優(yōu)質(zhì)文檔-傾情為你奉上專心-專注-專業(yè)實驗課程名稱:Java語言程序設(shè)計A實驗項目名稱實驗成績實 驗 者專業(yè)班級組 別同 組 者無開始日期第一部分:實驗預(yù)習(xí)報告(包括實驗?zāi)康募耙饬x,實驗基本原理與方法,主要儀器設(shè)備及耗材,實驗內(nèi)容及要求,實驗方案與技術(shù)路線等)一實驗?zāi)康募耙饬x1根據(jù)實際需求,使用UML類圖,合理設(shè)計父類、子類及其成員(實例變量、方法)。2編寫抽象父類與抽象方法,并最終由具體子類實現(xiàn)抽象方法。3實現(xiàn)子類方法對父類方法的覆蓋。4使用多態(tài)。5動態(tài)方法調(diào)度與向下強制類型轉(zhuǎn)換。6設(shè)計、實現(xiàn)算法邏輯。二
2、實驗基本原理與方法1繼承的概念、思想、層次、定義。2抽象類與抽象方法的概念、定義,抽象方法的最終實現(xiàn)。3方法覆蓋的概念、實現(xiàn)。4多態(tài)的概念、優(yōu)勢、應(yīng)用。5動態(tài)方法調(diào)度的概念、實現(xiàn)。三主要儀器設(shè)備及耗材1PC及其兼容機。2計算機操作系統(tǒng)。3程序編輯器EditPlus/Eclipse。4Java開發(fā)工具JDK。四實驗內(nèi)容及要求實驗2-1:類Person定義了姓名name、出生年份birthYear,其子類CollegeGraduate定義了平均成績gpa、畢業(yè)年份graduateYear。設(shè)計完整的繼承層次結(jié)構(gòu)UML類圖,并轉(zhuǎn)換為Java代碼。編寫測試類PersonTest,輸出畢業(yè)生的姓名、年齡
3、、畢業(yè)年份、平均成績,一種可能的運行結(jié)果示例如下:實驗2-2(選做):某小型企業(yè)銷售部門共4名員工:銷售經(jīng)理1名、專職銷售員2名、兼職促銷員1名。員工工資的計算方法:銷售經(jīng)理每月底薪3000元,銷售提成為該部門當(dāng)月銷售總額的1%;專職銷售員每月底薪2000元,銷售提成為當(dāng)月銷售額的5%;兼職促銷員時薪50元。請從鍵盤輸入每位員工的相關(guān)信息,計算工資。五實驗方案及技術(shù)路線(設(shè)計思路、UML類圖、算法、注意事項)實驗2-1的繼承層次結(jié)構(gòu)UML類圖如下:對于實驗2-2,在父類中首先要定義抽象方法用于計算工資,再寫兩個子類,分別計算經(jīng)理和銷售員的工資,計算銷售員的工資時需要區(qū)分全職和兼職,所以需要重載
4、getWage()方法,而經(jīng)理的工資需要統(tǒng)計部門的總銷售額,所以測試類中最后創(chuàng)建Manager的實例。簡略的UML類圖如下: 第二部分:實驗過程記錄(可加頁)(代碼、運行結(jié)果、實驗中出現(xiàn)的問題及解決過程)實驗2-1:Person類代碼如下:public class Person private String name;private int birthYear;public Person(String name, int birthYear) = name;this.birthYear = birthYear;public String getName() return n
5、ame;public void setName(String name) = name; public int getBirthYear() return birthYear; public void setBirthYear(int birthYear) this.birthYear = birthYear; CollegeGraduate類代碼如下:public class CollegeGraduate extends Personprivate double gpa;private int graduateYear;public CollegeGraduate(St
6、ring name, int birthYear ,double gpa,int graduateYear) super(name, birthYear);this.gpa=gpa;this.graduateYear=graduateYear;public double getGpa() return gpa;public void setGpa(double gpa) this.gpa = gpa;public int getGraduateYear() return graduateYear;public void setGraduateYear(int graduateYear) thi
7、s.graduateYear = graduateYear;PersonTest類代碼如下:public class PersonTestpublic static void main(String args) CollegeGraduate student=new CollegeGraduate(姓名,出生年份,3.88,2016);System.out.println(學(xué)生:+student.getName()+n出生年份為:+student.getBirthYear()+n畢業(yè)年份:+student.getGraduateYear()+n平均績點為:+student.getGpa();P
8、ersonTest類輸出結(jié)果如下:省略實驗2-2:SaleEmployee類代碼如下:public abstract class SaleEmployee private String employeeNumber;private String employeeName;private String status;private String post;public SaleEmployee(String employeeNumber, String employeeName,String status,String post) this.employeeNumber = employeeNu
9、mber;this.employeeName = employeeName;this.status = status;this.post = post;public String getEmployeeNumber() return employeeNumber; public String getEmployeeName() return employeeName; public String getStatus() return status; public String getPost() return post; public abstract double getWage();pub
10、lic abstract double getWage(int tempHour); Salesman 類的代碼如下:public class Salesman extends SaleEmployeeprivate double sales;public Salesman(String employeeNumber, String employeeName, String status,String post, double sales) super(employeeNumber, employeeName, status, post);this.sales = sales; public
11、double getSales() return sales; Overridepublic double getWage() return 2000+sales*0.05; public double getWage(int hour) double wage = 0;if(getStatus().equals(P)|getStatus().equals(p) wage=50*hour; return wage;public String toString()String show;if(getStatus().equals(P)|getStatus().equals(p)show= 兼職銷
12、售員編號:+getEmployeeNumber()+n+兼職銷售員姓名:+getEmployeeName()+n+銷售額+sales+n+時薪:50元;else show= 全職銷售員編號:+getEmployeeNumber()+n+全職銷售員姓名:+getEmployeeName()+n+銷售額+sales+n+底薪:2000元;return show; Manager 類的代碼如下:public class Manager extends SaleEmployeeprivate double totalSales;public Manager(String employeeNumber,
13、 String employeeName, String status,String post,double totalSales) super(employeeNumber, employeeName, status, post);this.totalSales = totalSales; Overridepublic double getWage() return 3000+totalSales*0.01;public String toString()return 銷售經(jīng)理編號:+getEmployeeNumber()+n+銷售經(jīng)理姓名:+getEmployeeName()+n+部門銷售
14、總額:+totalSales+底薪:3000元;Overridepublic double getWage(int tempHour) /此類中不使用該方法return 0; EmployeeTest 類的代碼如下:import java.util.Scanner;public class EmployeeTest public static void main(String args) Scanner sc=new Scanner(System.in);SaleEmployee employeeList=new SaleEmployee4;for(int i=0;i3;i+)System.o
15、ut.println(請輸入1名銷售員的編號);String numberTemp=sc.next();System.out.println(請輸入1名銷售員的姓名);String nameTemp=sc.next();System.out.println(請輸入該銷售員在職狀態(tài):nF全職 P兼職);String statusTemp=sc.next();System.out.println(請輸入該名銷售員的銷售額);double salesTemp=sc.nextDouble();employeeListi=new Salesman(numberTemp,nameTemp,statusTe
16、mp,salesperson,salesTemp);System.out.println(請輸入銷售經(jīng)理的編號);String number=sc.next();System.out.println(請輸入銷售經(jīng)理的姓名);String name=sc.next();double tSales=(Salesman) employeeList0).getSales()+(Salesman) employeeList1).getSales()+(Salesman) employeeList2).getSales();employeeList3=new Manager(number,name,F,
17、salesManager,tSales);for(SaleEmployee item:employeeList)if(item.getStatus().equals(P)|item.getStatus().equals(p)System.out.println(item);System.out.println(請輸入該兼職銷售員的工作時長);int tempHour=sc.nextInt();System.out.println(該兼職銷售員工資:+item.getWage(tempHour)+n);else if(item.getPost().equals(salesperson)System.out.println(item);System.out.println(工資:+item.getWage()+n);elseSystem.out.println(item);System.out.println(工資:+item.getWage()+n);運行結(jié)果如下:教師簽字_第三部分 結(jié)果與討論(可加頁)實驗結(jié)果分析(包括數(shù)據(jù)處理、影響因素討論
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
- 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔(dān)用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 【假期提升】五升六語文暑假作業(yè)(七)-人教部編版(含答案含解析)
- 緊急任務(wù) 面試題及答案
- 2025年軍隊文職人員招聘之軍隊文職法學(xué)考前沖刺模擬試卷A卷含答案
- 2019-2025年消防設(shè)施操作員之消防設(shè)備中級技能題庫綜合試卷A卷附答案
- 遺產(chǎn)繼承房產(chǎn)過戶合同
- 汽車運輸合同協(xié)議書
- 語言學(xué)與文化差異閱讀理解題
- 信息技術(shù)支持下的農(nóng)業(yè)智能生產(chǎn)合作協(xié)議
- 陜西省渭南市富平縣2024-2025學(xué)年八年級上學(xué)期期末生物學(xué)試題(含答案)
- 湖南省新高考教研聯(lián)盟2024-2025學(xué)年高三下學(xué)期一模聯(lián)考地理試題(含答案)
- 河南省創(chuàng)新發(fā)展聯(lián)盟2023-2024學(xué)年高一下學(xué)期3月月考化學(xué)試題(解析版)
- 農(nóng)村自建房包工包料施工合同
- 《鐵路職業(yè)道德》課件-第6章 鐵路職業(yè)道德修養(yǎng)
- 中考心理減壓輔導(dǎo) 中考前心理健康教育主題班會
- 小學(xué)四年級心理健康教育課
- 【上市公司的財務(wù)風(fēng)險的分析和防范:以三只松鼠為例10000字(論文)】
- 部編版小學(xué)語文四年級下冊教師教學(xué)用書(教學(xué)參考)完整版
- 幼兒園消防安全知識競賽試題及答案
- 莫高窟群文閱讀教學(xué)設(shè)計
- 樂理視唱練耳簡明教程課后習(xí)題答案
- 2023年10月自考試題02398土力學(xué)及地基基礎(chǔ)
評論
0/150
提交評論