




版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領
文檔簡介
1、天津商業(yè)大學學生實驗報告開課實驗室:現(xiàn)代信息交流中心403 開課時間: 2015年*月*日 實驗報告: 2015 年 04 月 17日 學院名稱信息工程學院年級、專業(yè)、班計科學號姓名同組姓名無課程名稱Java程序設計實驗項目名稱Java面向?qū)ο蟪绦蛟O計(2)指導教師尉斌實驗類型驗證 綜合 設計 創(chuàng)新 成績教師評語 教師簽名: 年 月 日一、 實驗目的:熟悉類、對象、方法、繼承和多態(tài)的使用方法。二、 實驗內(nèi)容:1. 創(chuàng)建一個Point類,包含坐標x、y。然后創(chuàng)建一個Line類,定義兩個讀寫屬性start和end,數(shù)據(jù)類型為Point,定義Line類方法(計算start和end之間的距離,并打印s
2、tart和end坐標以及距離信息)。2. 根據(jù)下面類圖,設計一個名為Student的類,包括屬性“學號”、“姓名”以及3門課程“數(shù)學”、“英語”和“計算機”的成績,包括的方法有計算3門課程的“總分”、“平均分”、“最高分”及“最低分”。在此基礎上,使用數(shù)組來實現(xiàn)對多個學生的管理。編寫一個控制臺應用程序,實現(xiàn)如下菜單功能。3. 題目:品嘗飲料要求:(1)使用鍵盤輸入?yún)?shù)(飲料類型),輸出該飲料類型的味道,如:當鍵盤輸入?yún)?shù)為1時,結果見圖1:(2)如果沒有該種飲料,結果見圖2:實現(xiàn)步驟:(1) 建立一個Java抽象類Drink,應當:a、 聲明一個抽象方法taste( ),該方法負責輸出飲料的味
3、道;b、 聲明int型常量來代表不同的飲料類型(咖啡、啤酒、牛奶)c、 聲明靜態(tài)工廠方法getDrink(int drinkType),根據(jù)傳入的參數(shù)創(chuàng)建不同的飲料對象,并返回該對象,建議使用switch語句。(2) 建立Drink的具體子類:a、 分別建立Drink的子類:Coffee(代表咖啡),Beer(代表啤酒),Milk(代表牛奶);b、 實現(xiàn)taste()方法,要求在屏幕輸出中打印各自的味道特征。(3) 建立Test測試類,測試以上內(nèi)容的正確性a、 編寫main方法,通過命令行傳參的方式傳入某種飲料的類型。b、 在main方法中,調(diào)用Drink類的getDrink方法,獲得相應的飲
4、料對象。c、 然后調(diào)用該飲料的taste()方法,輸出該飲料的味道。三、 源代碼清單:1 源代碼清單public class Point public static void main(String args)Point point1=new Point(1,2);Point point2=new Point(4,6);Line line1=new Line(point1, point2);System.out.println("The distance is "+line1.line()+"nThe start is "+"("+l
5、ine1.start.x+","+line1.start.y+")"+"nThe end is "+"("+line1.end.x+","+line1.end.y+")"); double x;double y;Point()Point(double x, double y)this.x=x;this.y=y;class Line Point start;Point end;Line()Line(Point newStart, Point newEnd)start=newSt
6、art;end=newEnd;public double line()return Math.sqrt(end.x-start.x)*(end.x-start.x)+(end.y-start.y)*(end.y-start.y);2源代碼清單public class Student String stuno;String name;float math;float english;float computer;Student() Student(String stuno, String name, float math, float english, float computer)this.s
7、tuno=stuno;=name;this.math=math;this.english=english;puter=computer;public String getStuno() return stuno;public void setStuno(String s) this.stuno = s;public String getName() return name;public void setName(String n) = n;public float getMath() return math;public void setMath(floa
8、t m) this.math = m;public float getEnglish() return english;public void setEnglish(float e) this.english = e;public float getComputer() return computer;public void setComputer(float c) puter = c;public double sum() return math+english+computer;public double avg()return (math+english+computer)/3;publ
9、ic double max(double max)if(math>=english)if(math>=computer)max=math;else max=computer;else if(math<english)if(english<computer)math=computer;elsemax=english;return max;public double min(double min)if(math<=english)if(math<=computer)min=math;elsemin=computer;else if(math>english
10、)if(computer>english)min=english;else min=computer;return min;public class Manager extends Student private Student student = new Student100;private static int numberOfStudent = 0;int getNumberOfStudent() return numberOfStudent;Student getStudent() return student;boolean addStudent(Student student
11、) try this.studentnumberOfStudent = student;numberOfStudent+;return true; catch (Exception e) return false;boolean removeStudent(String stuno) boolean target = false;for (int i = 0; i < numberOfStudent; i+)if (studenti.getStuno().equals(stuno) studenti = null;target = true;return target;Student f
12、indStudent(String s) for (int i = 0; i < numberOfStudent; i+)if (studenti != null)if (studenti.getStuno().equals(s)| studenti.getName().equals(s)return studenti;return null;boolean changeStudent(Student student) for (int i = 0; i < numberOfStudent; i+) if (this.studenti.getStuno().equals(stude
13、nt.getStuno()| this.studenti.getName().equals(student.getName() this.studenti = student;return true;return false;void print() System.out.println("學號t姓名t數(shù)學t英語t計算機");for (int i = 0; i < numberOfStudent; i+)if (studenti != null) System.out.println(studenti.getStuno() + "t"+ stude
14、nti.getName() + "t" + studenti.getMath()+ "t" + studenti.getEnglish() + "t"+ studenti.getComputer();void caculate() float max_math = 0, min_math = student0.getMath(), sum_math = 0;for (int i = 0; i < numberOfStudent; i+) sum_math += studenti.getMath();if (studenti.ge
15、tMath() > max_math)max_math = studenti.getMath();else if (studenti.getMath() < min_math)min_math = studenti.getMath();float avg_math = sum_math / numberOfStudent;float max_english = 0, min_english = student0.getEnglish(), sum_english = 0;for (int i = 0; i < numberOfStudent; i+) sum_english
16、+= studenti.getEnglish();if (studenti.getEnglish() > max_english)max_english = studenti.getEnglish();else if (studenti.getEnglish() < min_english)min_english = studenti.getEnglish();float avg_english = sum_english / numberOfStudent;float max_computer = 0, min_computer = student0.getComputer(),
17、 sum_computer = 0;for (int i = 0; i < numberOfStudent; i+) sum_computer += studenti.getComputer();if (studenti.getComputer() > max_computer)max_computer = studenti.getComputer();else if (studenti.getComputer() < min_computer)min_computer = studenti.getComputer();float avg_computer = sum_com
18、puter / numberOfStudent;System.out.println("學科t平均成績t最高分t最低分");System.out.println("數(shù)學t" + avg_math + "t" + max_math + "t"+ min_math);System.out.println("英語t" + avg_english + "t" + max_english + "t"+ min_english);System.out.println(
19、"計算機t" + avg_computer + "t" + max_computer + "t"+ min_computer);import java.util.Scanner;public class TestStudent public static void main(String args) Manager manager = new Manager();System.out.println("1.添加學生n2.刪除學生n3.查詢學生n4.修改學生n5.打印學生n6.統(tǒng)計學生n7.退出");Scanner
20、scanner = new Scanner(System.in);boolean flag = true;while (flag) int input = 9;try input = scanner.nextInt(); catch (Exception e) System.out.println("Wrong operation.");flag = false;switch (input) case 1:System.out.println("Enter the student's information(stuno,name,math,english,
21、computer):");Student student1 = new Student();student1.setStuno(scanner.next();student1.setName(scanner.next();student1.setMath(scanner.nextFloat();student1.setEnglish(scanner.nextFloat();student1.setComputer(scanner.nextFloat();if (manager.addStudent(student1)System.out.println("success.&
22、quot;);elseSystem.out.println("fail.");break;case 2:System.out.println("Enter the stuno:");if (manager.removeStudent(scanner.next()System.out.println("success.");elseSystem.out.println("fail.");break;case 3:System.out.println("Enter the stuno or name:&quo
23、t;);Student student3 = manager.findStudent(scanner.next();if (student3 != null) System.out.println(student3.getStuno() + "t"+ student3.getName() + "t" + student3.getMath()+ "t" + student3.getEnglish() + "t"+ student3.getComputer(); elseSystem.out.println("
24、;There is no such a student.");break;case 4:System.out.println("Enter the changed student(stuno,name,math,english,computer):");Student student4 = new Student();student4.setStuno(scanner.next();student4.setName(scanner.next();student4.setMath(scanner.nextFloat();student4.setEnglish(sca
25、nner.nextFloat();student4.setComputer(scanner.nextFloat();if (manager.changeStudent(student4)System.out.println("change success.");elseSystem.out.println("change fail.");break;case 5:manager.print();break;case 6:try manager.caculate();break; catch (Exception e) System.out.println("there is no student.");case 7:flag = false;System.out.println("退出。");break;default:System.out.println("Wrong operation.");3. 源代碼清單public abstract class Drink public abstract String getTaste();int drinkType; int Coffee=1;i
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2024年晉城澤州縣人民醫(yī)院招聘考試真題
- 2024年保山市隆陽區(qū)永昌街道社區(qū)衛(wèi)生服務中心招聘考試真題
- 2025寶雞中北職業(yè)學院單招《物理》自我提分評估【新題速遞】附答案詳解
- 沖孔機培訓課件
- 流感培訓課件講解
- 2025年文秘專業(yè)求職自薦信12篇
- 我們的策展課件
- 福建省2025年房地產(chǎn)經(jīng)紀人:房地產(chǎn)中介的特點考試試題
- 2024年云浮市郁南縣招聘公益性崗位人員筆試真題
- 2024-2025學年漳州衛(wèi)生職業(yè)學院單招《職業(yè)適應性測試》模擬試題【原創(chuàng)題】附答案詳解
- 2025年中國大米加工行業(yè)發(fā)展?jié)摿Ψ治黾巴顿Y方向研究報告
- 2023-2024學年四川省廣安市高二下學期期末教學質(zhì)量檢測數(shù)學試題 (解析版)
- 夾具考試題及答案
- (高清版)DB31∕T 1530-2024 心理咨詢機構服務規(guī)范
- 青海省消防救援總隊招聘消防文員筆試真題2024
- 便秘科普宣傳課件
- 浙江潔普斯清潔設備有限公司年產(chǎn)11萬臺清洗機技改項目環(huán)評報告
- 高校資產(chǎn)管理十五五規(guī)劃方案
- 2024年威寧自治縣在職在編教師考調(diào)真題
- 小學生反洗錢課件
- 酒店前廳部管理制度
評論
0/150
提交評論