oo第二次部落格作業

2022-09-10 07:12:10 字數 1815 閱讀 2506

一、前言

題目集四

知識點考察:檢驗字串的合法性以及類與類之間相互聯絡關係的操作,簡單的資料合法性判斷與日期邏輯推理判斷.其中字串的stringbuilder應用以及字串檢驗的使用了正規表示式的應用,還有類與類之間的繼承和聚合關係的實現去解決問題.題目量:適中;難度:適中

題目集五

知識點考察:字串的計數以及陣列的合併還有陣列的三種常用排序方法,其中字串的計數對於j**a中53個關鍵字計數,然後類與類之間的繼承關係應用解決日期問題,日期

邏輯推理以及合法性檢驗.

題目量:適中;難度:適中

題目集六

知識點考察:

簡單的字串的正規表示式檢驗合法性還有字串的排序.圖形的繼承與多型的使用解決面積周長問題,簡單的形狀合法判斷,抽象類的構造與抽象類方法的複寫應用,還有與類有關的介面的使用.

題目量:適中;難度:適中

二、設計與分析

1.日期聚合問題

在日期問題物件導向設計(聚合一)中,此題是傳統的類使用方式,通過定義不同的類,並在其內進行物件的巢狀,實現了多個相關類之間的相互呼叫。其主要結構為將year類作為最底層的物件,依次巢狀在月,日類中,實現的日期的聚合,如圖這樣做的缺點非常明顯各類之間的巢狀非常複雜,使得**在出錯時,難以快速定位到bug處,即使使用軟體自帶的debug方法也難以快速定位到錯誤。對於相同的日期構造,此題要求採用與聚合一之間明顯的不同在於,day,month,year類之間各自獨立,並沒有巢狀,因此當資料出錯時,可以迅速定位到錯誤所在的類,因此在構造相類似的類結構時,建議採用如上圖所示的結構,這樣將使**更為簡潔,結構更加清晰。

聚合二**如下:

import j**a.util.scanner;

public class main ;

dateutil() 或 或 共6種如需匹配或檢驗乙個合法的字串可以使用string.matches(string regex)如需替換乙個匹配的字串可以使用string.replaceall(string regex,string replacement)如需切割乙個匹配的字串可以使用string.spilt(string regex)方法來完成如需使用全部所匹配的字串可用pattern=pattern.compile,matcher m = p.matcher(string) , m.find(),m.group()方法進行操作;匹配的正規表示式需要自己構造,方法有很多,構造符合模板即可。

四.改進建議

對於日期類題目求前n天,後n天以及兩個日期之間的查值可以不用for迴圈乙個個加上去,對相差年,月的天數可直接進行處理,使程式執行的更快。

五.總結與分析

通過了這三次的題目集訓練之後,我學到了很多,我理解到了類與類之間的關係,明白了聚合關係,所謂聚合關係:當物件a被加入到物件b中,成為物件b的組成部分時,物件b和物件a之間為聚合關係.聚合是關聯關係的一種,是較強的關聯關係,強調的是整體與部分之間的關係。之後又學習了繼承關係,理解了繼承關係,知道了繼承即多個類中存在相同屬性和行為時,將這些內容抽取到單獨乙個類中,那麼多個類無需再定義這些屬性和行為.而繼承的好處:1提高了**的復用性2提高了**維護性3類和類產生這種關係,是多型的前提條件!多型此時也應運而生,所謂的「多型」,簡單的理解就是物件在不同情況下的不同表現,具體體現在定義和功能兩個方面,簡單的總結一下,多型可以用「三個定義和兩個方法」來總結.三個定義分別是父類定義子類構建,介面定義實現類構建和抽象類定義實體類構建,而兩個方法分別是方法過載和方法重寫.

OO第二次部落格作業

從第4次作業開始,就進入了多執行緒程式設計的環節。我個人對於多執行緒的理解就是在乙個程式在執行時有多個執行流,能夠實現多個執行緒併發執行的技術。由於能在同一時間內執行多個執行緒,因而能夠提公升計算機的整體處理效能。第五次作業分析 由於第五次作業是我第一次接觸到多執行緒程式設計,因此這次作業對於我來說...

OO第二次部落格作業

第五次作業和第六次作業因為一些個人原因被判了無效所以這裡就不拿出來分析了 捂臉 第七次作業 設計乙個簡單的計程車排程系統 類圖 度量分析 其實在剛看到指導書的時候,覺得排程規則十分複雜。週日看了一下午指導書之後才大概想到一點思路,接著就開始了一步步嘗試。其實這次作業的目標十分明確,每個執行緒的任務很...

OO第二次部落格作業

在多執行緒的海洋裡遨遊了三周後,同學們又有了這難得的乙個月一次的oo部落格 休息 時間。多執行緒的各種 玄學 問題可是給我帶來了不少困擾和麻煩。而且這三次作業的共性特點就是特別難debug,不僅是難以給自己debug,給別人debug也不容易。就趁這個時間來回顧下這三周的時光吧!1.簡述 經過了傻瓜...