日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

Java第二次实验报告——Java面向对象程序设计

發布時間:2023/11/30 java 40 豆豆
生活随笔 收集整理的這篇文章主要介紹了 Java第二次实验报告——Java面向对象程序设计 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

??????????????????????????????????????????????????????????????????????????? 北京電子科技學院(BESTI)

實 ? ?驗 ? ?報 ? ?告

課程名稱:java程序設計實驗 ? ? ?班級:1352 ? ? ? ? 姓名:洪韶武 ? ? ?學號:20135219

成績: ? ? ? ? ? ? ? ? ? ? ? ? ? 指導教師:婁嘉鵬 ? ? ? ? ? ? ? ? ? ?實驗日期:2015.05.07

實驗密級: ? ? ? ? ? ? ? ? ? ?預習程度: ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? 實驗時間: ? ? ? ? ? ? ? ??

儀器組次: ? ? ? ? ? ? ? ? ? ?必修/選修:選修 ? ? ? ? ? ? ? ? ? ? ? 實驗序號:02

實驗名稱:?????????????????????????????????Java面向對象程序設計???????????????????????????????????????????????????????????????????????????

實驗目的與要求:

目的:???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????? ?

1. 初步掌握單元測試和TDD???????????????????????????????????????????????????????????????????????????????????????????????????????????????????

2. 理解并掌握面向對象三要素:封裝、繼承、多態???????????????????????????????????????????????????????????????????????????????????????

3. 初步掌握UML建模???????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

4. 熟悉S.O.L.I.D原則??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

5. 了解設計模式??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

要求:??????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????????

1.完成實驗、撰寫實驗報告,以博客方式發表在博客園???????????????????????????????????????????????????????????????????????????????????

2.實驗報告重點是運行結果、遇到的問題(工具查找,安裝,使用,程序的編輯,調試,運行等)、解決辦法?????????????????

3. 嚴禁抄襲,有該行為者實驗成績歸零,并附加其他懲罰措施????????????????????????????????????????????????????????????????????????

實驗儀器:

名稱型號數量
PCMAC1

? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ? ?

?

?

實驗步驟:

(一)單元測試

1.三種代碼

???偽代碼:以簡潔的自然語言表明設計步驟;

???產品代碼:用以實現特定功能的程序或機器語言;

?? 測試代碼:用以對產品代碼進行測試的代碼

應用舉例:學生考試等級劃分程序產品代碼

產品代碼:

?

測試代碼:

測試一:選取某一合法輸入值進行測試

測試二:測試各個等級數值

測試三:測試邊界情況、測試非法數值輸入

?

2.TDD(Test Driven Devlopment, 測試驅動開發)

以程序測試推動程序開發即先寫測試代碼,然后再寫產品代碼的開發方式

java中有單元測試工具JUnit來輔助進行TDD,具體過程見下:

java——〉File——〉New——〉Java Project——〉TDDDemo——〉右鍵單擊TDDDemo——〉New——〉Source Folder——〉test——右鍵單擊test——〉New——〉JUnit Test Case——〉MyUtilTest——〉其superclass改為junit.framework.TestCase

?

在src中新建MyUtil類并輸入產品代碼,然后運行測試代碼(Run as——> JUnit Test)

運行結果如下(分別為修改產品代碼前后測試結果):

?

(二)面向對象三要素

封裝、繼承與多態

封裝:將與某一將數據與相關行為包裝在一起以實現信息就隱藏,核心內容是模塊化和信息隱藏,與此相伴的是接口的使用

封裝示例

利用umbrello軟件,可以將以上思路進行具象化表示

?繼承:以封裝為基礎,一個類的定義可以基于另外一個已經存在的類,即子類基于父類,從而實現父類代碼的重用。其更為廣泛而重要的作用是實現多態,

繼承示例:

Dog類和Cat類都有Color屬性和相應的setter和getter方法,可以通過繼承使其精煉化,把Color屬性和相應的setter和getter方法放到父類Animal中

??

(三)設計模式初步

(1)S.O.L.I.D原則

SRP(Single Responsibility Principle,單一職責原則):對象提供單一職責的高度封裝,對象的改變僅僅依賴于單一職責的改變

OCP(Open-Closed Principle,開放-封閉原則):即對擴充開放(功能可增加),對修改封閉(源代碼不可改動)

OCP實現手段:(1)抽象和繼承,(2)面向接口編程

LSP(Liskov Substitusion Principle,Liskov替換原則):子類必須可以被其基類所代,父類型對象可以被子類型對象所取代

ISP(Interface Segregation Principle,接口分離原則):客戶不應該依賴他們并未使用的接口

DIP(Dependency Inversion Principle,依賴倒置原則)

(2)模式與設計模式

模式是某外在環境(Context) 下﹐對特定問題(Problem)的慣用解決之道。其中最重要的是設計模式。

(3)設計模式實示例

設計模式四個基本元素

Pattern name:描述模式,便于交流,存檔

Problem:描述何處應用該模式

Solution:描述一個設計的組成元素,不針對特例

Consequence:應用該模式的結果和權衡

示例及運行結果:

(四)練習

1.使用TDD的方式設計實現復數類Complex。

設計思路:在測試類中,人為設置測驗標準(即注明若干情況下的輸出量,應本著盡可能全面的原則);在產品代碼中,為了符合測試類標準,應該分情況進行輸出。

代碼實現及運行結果:

?????????

?

????????????????

2.PSP統計:

步驟耗時百分比
需求分析2min10%
設計3min14%
代碼實現5min24%
測試3min14%
分析總結8min38%

?

轉載于:https://www.cnblogs.com/5219hsw/p/4486561.html

總結

以上是生活随笔為你收集整理的Java第二次实验报告——Java面向对象程序设计的全部內容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。