




版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領
文檔簡介
1、實 驗 報 告( 2017 / 2018學年 第1學期)課程名稱JAVA程序設計實驗名稱類、繼承實驗時間2017年 12月 15日指導單位 計算機學院、軟件學院軟件工程系指導教師 肖欣欣學生姓名胡君班級學號B16041309學院(系)計軟院專 業軟件工程實驗名稱類、繼承指導教師肖欣欣實驗類型上機實驗學時2實驗時間2017年12月15日一、 實驗目的1. 掌握類的定義2. 掌握對象的創建和使用3. 掌握類的繼承的概念4. 掌握派生類的定義二、實驗環境(實驗設備)1. 每位學生配備計算機一臺2. 計算機需安裝好JDK和Eclipse三、實驗內容(將編譯、運行成功后代碼寫入題目空白處)1、(1)定義
2、一個類MyRectangle代表矩形: 為矩形定義getLength方法(獲得矩形的長度)、getWidth方法(獲得矩形的寬度)、 setLength方法(設置矩形的長度)、setWidth方法(設置矩形的寬度)、 getArea方法(求矩形的面積)和toString方法(顯示矩形的信息)。(2)為矩形派生出一個子類MyCuboid代表長方體: 增加getHeight方法(獲取長方體的高度)、setHeight方法(設置長方體的高度)、 getVolumn方法(求長方體的體積),并對getArea方法(求長方體的表面積) 和toString方法(顯示長方體的信息)進行重寫。package e
3、xample1;public class 實驗二 public static void main(String args) throws ParseException MyRectangle rect = new MyRectangle(6, 5);System.out.println("length=" + rect.getLength() + ",width=" + rect.getWidth() + ",area=" + rect.getArea();rect.setLength(9);rect.setWidth(4);Syst
4、em.out.println(rect.toString();MyCuboid cub = new MyCuboid(6, 5, 3);System.out.println("length=" + cub.getLength() + ",width=" + cub.getWidth() + ",height=" + cub.getHeight()+ ",area=" + cub.getArea() + ",volume=" + cub.getVolume();cub.setLength(14);
5、cub.setWidth(7);cub.setHeight(18);System.out.println(cub.toString();class MyRectangle private int length, width;public MyRectangle(int length, int width) this.length = length;this.width = width;public int getLength() return length;public int getWidth() return width;public void setLength(int length)
6、this.length = length;public void setWidth(int Width) this.width = Width;public int getArea() return width * length;public String toString() return "length=" + length + ",width=" + width + ",area=" + width * length;class MyCuboid extends MyRectangle private int height;pu
7、blic MyCuboid(int length, int width, int height) super(length, width);this.height = height;public void setHeight(int height) this.height = height;public int getHeight() return height;public int getVolume() return getLength() * getWidth() * height;public int getArea() return 2 * (getLength() * getWid
8、th() + getLength() * height + getWidth() * height);public String toString() return "length=" + getLength() + ",width=" + getWidth() + ",height=" + height + ",area=" + getArea()+ ",volume=" + getVolume();2、(1)聲明一個類:People。具體要求如下:n 聲明私有的數據成員:pName(姓名)、
9、pSex(性別)、pBirth(出生日期);提示:pBirth成員使用java.util.Calendar類型。n 定義必要的構造方法;n 定義用于修改數據成員的setName、setSex、setBirth方法;n 定義用于讀取數據成員的getName、getSex、getBirth方法;n 定義輸出People對象信息的toString方法,信息格式:“姓名、性別、年齡:*歲”。(2)聲明一個類:Student。具體要求如下:n 繼承自People類;n 聲明私有的數據成員:sNo(學號)、sMajor(專業);n 定義用于修改數據成員的setNo、setMajor方法;n 定義用于讀取數
10、據成員的getNo、getMajor方法;n 重新定義輸出Student對象信息的toString方法,信息格式:“學號、姓名、性別、年齡:*歲、專業”。(3)聲明一個名為Ex2的類,在這個類的main方法中,用Student類創建一個對象 (有關信息:B17010101、張三、男、1999年9月9日、軟件工程), 并使用toString方法輸出該學生信息。package example1;import java.text.ParseException;import java.text.SimpleDateFormat;import java.util.Calendar;import java
11、.util.Date;public class Ex2 public static void main(String args) throws ParseException Calendar ca = Calendar.getInstance();ca.set(1999, 10, 9);Student stu = new Student("張三", "男", ca, "B17010101", "軟件工程");System.out.println(stu.toString();class People private
12、 String pName, pSex;private Calendar pBirth;public People(String name, String sex, Calendar birth) pName = name;pSex = sex;pBirth = birth;public void setName(String name) pName = name;public void setSex(String sex) pSex = sex;public void setBirth(Calendar birth) pBirth = birth;public String getName(
13、) return pName;public String getSex() return pSex;public Calendar getBirth() return pBirth;public String toString() return pName + "、" + pSex + "、年齡:" + (2017 - pBirth.get(Calendar.YEAR) + "歲"class Student extends People private String sNo, sMajor;public Student(String
14、name, String sex, Calendar birth, String no, String major) super(name, sex, birth);sNo = no;sMajor = major;public void setNo(String no) sNo = no;public void setMajor(String major) sMajor = major;public String getNo() return sNo;public String getMajor() return sMajor;public String toString() return sNo + "、" + getName() + "、" + getSex() + "、年齡:" + (2017 - getBirth().get(Calendar.YEAR) + "歲、" + sMajor;一開始遇到問題是calendar類型變量ca的值的設置為ca.set(1999,9,9),結果月份是8,后來發現月份是從0-11的
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯系上傳者。文件的所有權益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經權益所有人同意不得將文件中的內容挪作商業或盈利用途。
- 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
- 6. 下載文件中如有侵權或不適當內容,請與我們聯系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 工業園區規劃與產業升級研究
- 工業大數據在智能工廠的應用
- 工業污染治理技術與實踐
- 工業機器人與智能制造的關系研究
- 工業機器人技術及其應用案例分享
- 工業污染防治與環境保護措施
- 工業機器人發展現狀及趨勢分析
- 工業自動化系統的能效管理與優化
- 工業物聯網安全保障方案
- 工業設計中的創新設計思維研究
- 2025江西南昌市江銅產融社會招聘1人筆試參考題庫附帶答案詳解
- 2024年數據錄入的注意事項試題及答案
- 2025屆福建省廈門市高三下學期第二次質檢(二模)歷史試題
- 船舶安全隱患排查
- 竹編非遺面試題及答案
- 離婚協議書 標準版電子版(2025年版)
- 2025年服裝制版師(高級)職業技能鑒定考試題庫
- 2025屆西藏林芝地區五下數學期末考試試題含答案
- 財政投資評審咨詢服務預算和結算評審項目投標文件(技術方案)
- 手術室醫療垃圾的分類
- 教育領域中的信息化技術討論以小學數為例
評論
0/150
提交評論