第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定

我的困惑!

其實(shí)我覺得要實(shí)現(xiàn)這道題的功能并不難,但是,怎么樣完美的實(shí)現(xiàn)代碼的封裝以及減少代碼量才是我頭疼的...例如對于這種判斷名字和編號是否正確的方法是否可以封裝等等問題。我覺得在測試類里代碼越少越好,最好只要一句話調(diào)用一個(gè)方法就好了。還有對于業(yè)務(wù)的分析我感覺也遇到了障礙,從邏輯上來說,選書應(yīng)該是人的方法,讓人選書是圖書館的方法,我是否應(yīng)該再創(chuàng)建一個(gè)人類,和一個(gè)圖書館類?

問題寫得有些混亂,還請高手能詳細(xì)替我解答,要是有代碼就更好了,不勝感激!

正在回答

3 回答

下面是我個(gè)人的理解,參考了老師的代碼,不保證正確性,自由采用。

圖書館借書系統(tǒng)整體上作為一個(gè)類對待,其中涉及屬性和方法。

不需要?jiǎng)?chuàng)建人類吧,畢竟這里只需要獲取控制臺(tái)的命令,如果是真實(shí)的借書系統(tǒng),可能會(huì)涉及到人類的創(chuàng)建,比如學(xué)生或者教職工;

這里我們盡量從全局上劃分系統(tǒng)的實(shí)現(xiàn)方法,比如:

按照書名選書模塊;

安裝序號選書模塊;

命令接受模塊;

可以發(fā)現(xiàn)有了以上三個(gè)功能方法,該系統(tǒng)的功能就都實(shí)現(xiàn)了。

**盡量把和這些功能相關(guān)的組件都封裝到該方法里,而不要放到主調(diào)用方法里,主方法只負(fù)責(zé)接受返回值和處理拋出的異常。**

然后用主方法,分布調(diào)用這些模塊,處理這些模塊拋出的異常即可。

0 回復(fù) 有任何疑惑可以回復(fù)我~
#1

慕斯卡5333890 提問者

你覺得能不能將異常的處理也放在封裝的方法里?這樣好操作嗎?
2015-08-04 回復(fù) 有任何疑惑可以回復(fù)我~
#2

慕斯卡5333890 提問者

另外很謝謝你的解答,幫助很大
2015-08-04 回復(fù) 有任何疑惑可以回復(fù)我~
#3

神經(jīng)曠野舞者 回復(fù) 慕斯卡5333890 提問者

java剛學(xué),我把參考老師代碼得出的結(jié)論分享下 如果異常自己能處理我個(gè)人覺得肯定就自己處理了,但是一個(gè)方法里面可能會(huì)有多個(gè)異常: 除了java內(nèi)置函數(shù)的異常比如數(shù)組越界會(huì)自動(dòng)拋出異常(怎么處理,就要手動(dòng)catch了), 異常也可以自定義這個(gè)時(shí)候就手動(dòng)拋出異常
2015-08-05 回復(fù) 有任何疑惑可以回復(fù)我~
#4

神經(jīng)曠野舞者 回復(fù) 神經(jīng)曠野舞者

再比如getBookByName()這個(gè)方法,會(huì)拋出“圖書不存在異常”,當(dāng)然可以在方法內(nèi)直接處理這個(gè)異常,但是處理過程用到了main()里的其他命令,所以還是拋給mian()。
2015-08-05 回復(fù) 有任何疑惑可以回復(fù)我~
#5

買買提與三葉草 回復(fù) 神經(jīng)曠野舞者

非常贊同,我也是參考了老師的寫法,磕磕碰碰寫出來的,總體來說,老師的方法封裝的特別好,我的理解是,以后寫異常按照這個(gè)思路就好了。1、是java定義的異常,那么就寫try catch語句去捕捉就好了,你可以捕捉到直接處理,也可以封裝好以后拋到上一層,讓上一層調(diào)用者來處理。2、自定義異常,那就再方法的開始出先進(jìn)性throws聲明,然后方法中進(jìn)行throw異常
2015-08-14 回復(fù) 有任何疑惑可以回復(fù)我~
查看2條回復(fù)

我自己也說亂了,總之我覺得可以把方法里的異常分為兩種類型,
一種可以把異??醋鍪欠椒ㄗ陨韮?nèi)部的小bug,可以直接在方法里面處理掉用,
一種可以把異??醋鍪窃摲椒ǖ囊活愄厥夥祷刂?,既然是該方法的特殊返回值,當(dāng)然應(yīng)該可以拋給調(diào)用者處理,(有三種方式:1,返回值間接拋出;2,通過異常鏈打包拋出;3,直接拋出)
里面可能有講的不對的地方,學(xué)習(xí)就是試錯(cuò)

0 回復(fù) 有任何疑惑可以回復(fù)我~

再比如getBookByName()這個(gè)方法,會(huì)拋出“圖書不存在異?!?,當(dāng)然可以在方法內(nèi)直接處理這個(gè)異常,但是處理過程用到了main()里的其他命令,所以還是拋給mian()。

0 回復(fù) 有任何疑惑可以回復(fù)我~

舉報(bào)

0/150
提交
取消

我的困惑!

我要回答 關(guān)注問題
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號