噢,這就是封裝啊?!

來源:互聯網
上載者:User
    其實本人完全不太明白什麼是OO,而且現實中做的東西也不是很OO.剛才拜讀完亞曆山大同志《又見手把手系列-物件導向掃盲-通俗的OO第一彈-【封裝】》 深感茅塞頓開,終於大約地知道一點點啥是OO,亞曆山大同志在文中有提到:

    "最近針對OO有了太多的討論,太多的誤會,太多的不理解。讓我來一次性解決什麼是對象.."

    顯然是對OO超越常人的真知灼見,只是在下對於兄台後面執行個體的解釋有幾處非常困惑的地方,不知大家可否探討一下?

    一.兄台提到,當A君向B君借錢的例子實在太精彩了.鄙人表示十萬分的贊同.對於"我們給Man類增加一個Lend的方法,以封裝在借出錢的時候對自身狀態的改變。然後借錢的行為也要更改了。"這個實在太精彩了!但是,不知這個跟持久化有何關係呢?難道持久化改變了什麼屬性嗎?資料庫搶了某個人的錢嗎?

    二.BookManager讀取Book的屬性就是破壞了封裝性的原則這個就更加有趣了,那麼別的對象什麼的讀取Book的屬性又是不是破壞了封裝性的原則?困惑啊,我相當地困惑.對照上面的例子我冥想苦想,終於恍然大悟,認為兄台所說的讀取Book屬性是指讀取"私人的"屬性吧.可是,這又不對啊.據我所知的,就比如說NH吧.雖然我不敢確定它只會讀"公開的"屬性,但它只會讀取設定檔指定的屬性.你不會故意在設定檔指定它去讀取"私人的"屬性吧?

    三.那我們先假定你說的是完全正確的真理,那麼,不妨給我再上上課,這個book要緩衝到緩衝裡,還有序列化到磁碟裡的話,應該要怎麼設計,究竟儲存到緩衝,儲存到磁碟和持久化有什麼不同值得把持久化耦合到book裡面去?

    期待亞曆山大兄的再次掃盲!

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.