《物件導向程式設計》實驗指導書

2023-01-01 19:39:06 字數 3736 閱讀 1455

實驗一 j**a基礎實驗

實驗二 j**a物件導向特性試驗--j**a中的類、物件和方法

實驗三類的繼承、多型、介面、訪問控制符與修飾符

實驗四 j**a資源及其利用

實驗五 j**a 語言的異常處理

實驗六輸入輸出流

實驗七圖形使用者介面設計

實驗八 j**a applet及多執行緒試驗

附錄1 實驗報告格式

實驗一 j**a基礎實驗

一、實驗目的與要求

1. 學習編寫簡單的j**a程式。

2. 學習掌握j**a基本資料型別及其基本運算。

3. 學習掌握j**a 的基本流程控制語句。

二、相關知識

1. 了解jdk的工作環境,以及如何使用jdk進行程式設計。

2. 熟悉整合軟體 eclipse3.5及其使用。

二、實驗內容

1. 編寫程式並執行。

2. 用j**a語言編寫乙個應用程式在螢幕上輸出1000之內的素數。

3. 乙個數如果恰好等於它的因子之和,這個數就稱為「完數」,比如28=1+2+4+7+14。編寫乙個應用程式在螢幕上輸出1000之內的完數。

4. 求滿足1!+2!+3!+ …+n!≤9999的最大整數n 。

5. 乙個三位的整數如果它的各位數字的立方之和等於這個三位數,就稱此數為水仙花數,比如,編寫乙個應用程式在螢幕上輸出所有水仙花數。

6. 下面程式的輸出結果是什麼?

實驗二 j**a物件導向特性試驗-j**a中的類、物件和方法

一、實驗目的與要求

1. 掌握類的定義和使用。

2. 掌握物件的宣告、建立和使用。

3. 掌握構造方法的定義和使用。

4. 掌握類方法(靜態方法)和非類方法(非靜態方法)的區別和使用。

5. 掌握成員變數和區域性變數的區別和使用。

二、實驗內容

1. 編寫乙個j**a程式,定義乙個表示學生的類,類名student,

其成員變數有:學號、班級姓名、性別、年齡;

成員方法:(1)獲得班號(2)獲得姓名(3)獲得年齡(4)修改年齡;

建立乙個student的物件,修改該物件的年齡,並輸出該物件的年齡。

在檔案2.為student類定義構造方法,用於初始化所有成員變數,增加乙個方法tostring(),它的返回值是string,其功能是把乙個student類的物件的成員變數資訊組合成乙個字串並輸出。

3. 簡述建構函式的作用和特點。下面是某同學為student類編寫的乙個建構函式,請指出那些地方有錯誤:

void student(int sno, string sname)

4. 編寫乙個日期類date,要求:

(1) 日期類 date的成員變數有:year, month,day 都是int 型。

(2)日期類的方法有:

構造方法 date(),日期的預設值為2023年1月1日;

構造方法 date(int y,int m,int d),形參y,m,d分別為某個日期的年月日的初始值;

成員方法 int getyear():獲取日期的年數作為方法的返回值;

成員方法 int getmonth():獲取日期的月份作為方法的返回值;

成員方法 int getyear():獲取日期的日作為方法的返回值;

成員方法 void showdate():已「****年**月**日」的形式顯示乙個日期。

5.下面四個程式分別有什麼錯誤?

1)2)

3)4)

6. 下列**有什麼錯誤?

7. 下列程式的輸出是什麼?

8. 假設foo類如下圖(1)中定義,f是foo的乙個物件。圖(2) 中的哪些語句是正確的?

9. 如果合適的話,在「?」處加入static關鍵字。

10. 是否能在靜態方法中呼叫成員方法或引用成員變數?是否能在成員方法中呼叫靜態方法或引用靜態變數?下面**的錯誤是什麼?

11. 描述傳遞基本型別引數和傳遞引用型別引數的區別。寫出下面程式的輸出:

12. 寫出下列程式的輸出:

13. 寫出下列四個程式各自的輸出:

14. 下列程式的輸出是什麼?

15. 描述關鍵字this的作用,下列**有什麼錯誤?

public class c{

int p;

public void setp(int p){

p=p;

}}16. 編寫名為rectangle的類表示矩形,這個類包括:

·乙個double型別的資料域width和height表示矩形的寬和高,它們的預設值都為1;

·string型別的資料域color表示矩形的顏色,進一步假設所有矩形的顏色都是相同的,預設顏色為白色;

·無參構造方法建立預設矩形;

·乙個構造方法建立指定width和height的矩形;

·所有三個資料域的訪問器方法和修改器方法;

·getarea()方法返回該矩形的面積;

·getperimeter()方法返回它的周長;

編寫乙個測試程式,建立兩個rectangle物件,設定第乙個物件的寬為4,高為40,第二個物件的寬為3.5,高為35.9,所有rectangle物件的顏色為紅色。顯示兩個物件的屬性並求它們的面積和周長。

17. 設計乙個名為fan的類模擬風扇。這個類包括:

·三個常量slow,medium好fast,其值分別為1,2,3,表示風扇的速度;

·int型別的資料域speed表示風扇的速度(預設值為slow);

·boolean型的資料域on表示風扇是否開啟(預設值為false);

·double型的資料域radlus表示風扇的半徑(預設值為5);

·string型的資料域color表示風扇的顏色(預設值為blue);

·無參構造方法建立預設風扇;

·全部四個資料域的訪問器和修改器;

·tostring()方法返回描述風扇的字串。如果風扇開啟,該方法用乙個組合的字串返回風扇的速度、顏色和半徑;否則,用乙個組合的字串和「fan is off」一起返回風扇的顏色和半徑。

編寫乙個測試程式,建立兩個fan物件,將第乙個物件設定為最大速度,半徑為10,顏色為 yellow,開啟狀態;第二個物件為中等速度,半徑為5,顏色為blue,關閉狀態。通過呼叫tostring方法顯示該兩物件。

18. 設計乙個名為account的類模擬賬戶,它包括:

·int型資料域id表示賬號(預設值為0);

·double型資料域balance表示賬戶餘額(預設值為0);

·double型資料域annualinterestrate儲存當前年利率(預設值為0);

·date型資料域datecreated儲存賬戶開戶的日期;

·無參構造方法建立乙個預設的賬戶;

·id,balance和annualinterstrate的訪問器和修改器;

·datecreated的訪問器;

·getmonthlyinterestrate()方法返回月利率;

·withdraw方法從賬戶提取特定數額的款;

·deposit方法向賬戶存特定數額的款;

編寫乙個測試程式,建立乙個賬號為1122、餘額為20 000、年利率為4.5%的account物件。使用withdraw方法提款2500元,使用deposit方法存款3000元,並列印餘額和月利率,以及該賬戶的開戶日期。

19. 設計名為stock的類模擬**,該類包括:

·string型資料域symbol表示**代號;

·string型資料域name表示**的名稱;

·double型資料域previousclosingprice儲存前一天的****;

物件導向程式設計課程實驗指導書 C

實驗01 熟悉mfc程式設計 實驗學時 3 實驗型別 演示 操作 設計 實驗要求 必修 一 實驗目的 通過本實驗的學習,使學生熟悉visual c 6.0整合開發環境的使用,為今後程式程式設計和除錯奠定基礎 同時熟練c 基本語法 程式的基本結構和除錯一般程式的方法。二 實驗內容 1 進入和退出mic...

11427 C 物件導向程式設計 實驗指導書

1.實驗目的 1 熟悉上機環境,了解編譯過程中常見的錯誤與解決辦法。2 學會編寫簡單的c 程式並會用debug除錯程式。3 觀察建構函式和析構函式的執行過程。4 掌握動態記憶體分配的兩個運算子的使用 5 掌握函式引數的三種傳遞方式。6 學習利用友元求解問題。2.實驗內容 1 定義乙個學生類,學生資訊...

物件導向程式設計課程設計指導書

課程設計說明書 題目 學生資訊管理系統 學生姓名 李宇 學院 資訊工程學院 班級 計09 1 指導教師 邢紅梅講師 呂岩講師 關玉欣講師 2011 年 7 月 8 日 內蒙古工業大學課程設計 任務書 課程名稱 物件導向程式設計課程設計學院 資訊工程學院班級 計算機09 1 學生姓名 李宇學號 200...