通過深入繼承之抽象類和接口綜合分析及完整案列解說(一),我想大家已經認識到了知識共享的巨大力量了。我門上面看到的這些東西不 是我們任何一個人在短時間內就能夠總結出來的,但是大家一起總結,那結果就是這樣爽的。
我希望大家都能夠大方一點,別做得那麼 小氣,生怕自己知道的那點知識被別人知道了。飯碗就被別人搶了,事實上在跟人分享的過程中並不是一味的在付出,你同樣也會有收獲,無 論是幫別人解答疑問還是跟別人交流,就好象我在寫(或著說我是在復制別人的心得)一樣,看起來我是在無償的為大家做,事實上呢我同樣 的有收獲的,因為寫這個文章的時候我發現了很多我過去學和用中一之沒有注意到的死角,也發現很多更新,更好的技巧。
所以我相信 ,只要我門每個人都盡量的多跟人分享你所學,最終帶來的是大家的共同進步。在園裡我特別喜歡老趙(MSDN Web Cast的ASP.Net AJAX深入淺 出系列課程),Dflying Chen(AJax系列書籍),張逸老師(軟件設計精要與模式,WCF),李會軍(新版設計模式)等同志,他門的書籍及文章我相信大 家看後都會受益非淺,他們在園裡的排名及貢獻是大家共同看到的。
也許大家發現了我上面給張逸叫老師,這是為什麼呢?上面列舉的 這些牛人中我就認識張逸,認識我的朋友可別說是我和他同姓才特別介紹,其實並不是這樣。在我的學習過程中張逸老師對我幫助很大,在我 大學即將畢業的最後一年裡,我在張老師所在的公司實習(他當時是我門.Net開發一部的部長,管人可嚴了,我悄悄說的,大家看到了這句話一定 是眼花了,呵呵),他曾經給我上很多課程和開過很多技術專題講座,我想大家都知道,對於一個沒畢業的大學生來說,沒有一定的項目開發經 驗在寫論文的時候是很吃力的,在我考系統分析師期間論文得到他的指導讓我考試順利通過,在此我借園子的位置想張老師說聲謝謝。另外他 所著的《軟件設計精要與模式》對我的幫助也很大,雖然這不是一本講解設計模式的專題書籍,他的寫作卻是以設計模式為主來講解的,最後 以MS開源項目PetShop 4.0作為案例講解模式的應用,個人覺得寫得很不錯,我在現在的項目中都采用了書裡的很多設計思想。
看到這 裡大家是不是覺得我這個人很羅嗦了,寫文章寫到去介紹牛人和書籍去了,這是不是在為他門打廣告????
好了,言歸正轉,我門還 是進入主題,戲不能唱一半就停止了吧,既然開始了那麼演得在差也得演唱完畢吧。看看下面這個實例:
我門根據一個小書店的情況來 說這個實例,當然實例不能准確的說明一切,只是說通過這個類讓大家更感性的認識到抽象類和接口的使用情況。
首先分析書店的經營 情況
1. 書是可以出祖和銷售的
2. 書的分類為三個方面,所以銷售和出祖的價格分別也分三個檔次
3. 顧客分為會員和 普通顧客
通過上面的分析,我們可以開始構思程序的實現了
1. 無論買那種折扣的書都需要支付書對應的現金購買
2. 無 論租那種書都需要支付對應的租金
3. 無論那種業務類型都需要返回出詳細信息(實際上應該是寫入數據庫)
4. 無論他的邏輯 是怎麼樣的,我們在前台處理的時候並不想也不需要知道那麼多,我們就希望用我們現在知道的信息直
接換取到應該的操作.
這兩個我們使用接口來定義返回的 錢 .
然後再定義一個接口方法來處理我們的寫入數據庫操作(這裡是返回出詳細信息)
接 下來把顧客類型,交易類型,書的類型以及租借類型(指是租書還是還書)分別做個枚舉
先來看一個UML圖,我相信比我用手敲鍵盤更容 易說清楚結構。