亚洲在线久爱草,狠狠天天香蕉网,天天搞日日干久草,伊人亚洲日本欧美

為了賬號安全,請及時綁定郵箱和手機立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

兩個互相引用的類,用工廠模式創建時,死循環的問題

兩個互相引用的類,用工廠模式創建時,死循環的問題

慕田峪9158850 2019-03-21 18:15:22
假設有電腦、人 這么兩個類,如圖所示。class person{computer myComputer;}class computer{person myOwner;}用工廠模式如果我要創造小明這個人,那么我要用人的工廠去創造小明,在創造的時候我要set他有個HP電腦,那么我又要用電腦工廠去創造HP電腦。但是創造HP電腦的時候我又要去用人的工廠創造小明這個人,這不就是循環下去了嗎?所以我納悶了,1要么這樣設計類是不正確的,2要么有其他辦法解決這個問題學習得不好,請大神解答
查看完整描述

3 回答

?
慕桂英3389331

TA貢獻2036條經驗 獲得超8個贊

小明應該不是抱著電腦出生的, 而HP電腦在生產時應該也沒有打著小明的簽。 所以構造時可能不必提供相應的參數。當然抽象可能不一定需要完全遵照現實。

其次,電腦一般情況下對于誰是自己的Owner可能不太關心,如果可以去除這種依賴最好,單向依賴比雙向依賴簡單, 簡單就一定是好的。


查看完整回答
反對 回復 2019-04-30
?
寶慕林4294392

TA貢獻2021條經驗 獲得超8個贊

支持樓上,創建一個人的時候,不可能讓他衣帽整齊,拿著名片出生吧,是生下來以后才有的其他東西。所以在工廠里創建人的時候,只要保證其有這個屬性幾個,并不一定賦值。


查看完整回答
反對 回復 2019-04-30
?
HUWWW

TA貢獻1874條經驗 獲得超12個贊

這兩個類的設計是有問題的,電腦這個類中可以不要擁有者,在創建人這個類的時候可以實例化一個電腦類,然后這個關聯信息保存一個地方,查看電腦擁有者的時候去查以保存的就好了


查看完整回答
反對 回復 2019-04-30
  • 3 回答
  • 0 關注
  • 665 瀏覽
慕課專欄
更多

添加回答

舉報

0/150
提交
取消
微信客服

購課補貼
聯系客服咨詢優惠詳情

幫助反饋 APP下載

慕課網APP
您的移動學習伙伴

公眾號

掃描二維碼
關注慕課網微信公眾號