從頭認識Java之(Thinking in Java隨記系列)Ⅰ

今天正式畢業了,在北京的某公司也順利結束了實習。從學校回北京後直接轉正了,雖然今天週六還是去公司轉悠轉悠,一直想好好看看《Thinking in Java》(第四版),畢業了,全身心投入到工作中,自然也有了時間,從今天開始好好翻看一邊這本書,將自己在Java方面的基礎打的結實些。以後就是開篇一點小廢話,然後直入正文。因爲自身有一定的Java基礎,所以隨記會很草率,只記錄一些自己覺得相對的難點和自己的知識漏洞,和大家一起分享下,所以這一系列的東西不適合沒有Java基礎的朋友咯。

第2頁,面向對象程序設計的方式:
1)萬物皆爲對象。
2)程序是對象的集合,他們通過發送消息來告知彼此所要做的。
3)每個對象都有自己的由其它對象所構成的存儲。
4)每個對象都擁有其類型。
5)某一特定類型的所有對象都可以接受同樣的消息。

第5頁,訪問控制存在的原因:
1)讓客戶端程序員(使用數據類型的類消費者)無法觸及他們不應該觸及的部分。
2)允許庫設計者可以改變類內部的工作方式而不用擔心會影響到客戶端程序員。

第5頁,訪問指定詞(access specifier):
1)public,表示緊隨其後的元素對任何人都可以使用。
2)private,表示緊隨其後的元素對除了類型創建者和類型的內部方法之外的任何人都不可以使用。
3)protected,與private作用相當,差別僅在於繼承的類可以訪問protected修飾的元素,但還是不能訪問private修飾的元素。
4)默認的訪問權限,當沒有使用上述三種訪問指定詞時,則默認權限爲此權限,又稱爲包訪問權限。在這種權限下,類可以訪問在同一個包(庫構建)中的其他類的成員。

第10頁,一個難點也是一個編程小技巧有關繼承的。把子類看作是它父類的過程稱之爲向上轉型(upcasting)。

第11頁,單根繼承結構(除了C++,所有的OOP語言都是單根繼承結構,終極基類Object)的好處巨大,如:
1)單根繼承結構保證所有對象都具有某些功能。在你的系統中你可以在每個對象上執行某些基本操作,所有對象都很容易地在堆上創建,而且參數傳遞也得到了極大的簡化。
2)單根繼承結構使垃圾回收器的實現變得容易許多。由於所有對象都保證具有其類型信息,因此不會因爲無法確定對象的類型而陷入僵局。這對於系統級操作(如異常處理)顯得尤爲重要,並且給編程帶來了更大的靈活性。

第12頁,參數化類型(Java中稱作泛型):一個編譯器可以自動定製作用於特定類型上的類。例如,通過使用參數化類型,編譯器可以定製一個只接納和取出規定對象的容器。

第13頁,對象的創建和生命週期部分着重看一下,對比C++與Java。

用了17天的時間看了一章,效率爲0,公司事情有點多,以後一定抓緊時間。看了一章謹記一個概念OOP(Object-oriented Programming)面向對象程序設計

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章