《Java編程思想》讀書筆記

來源:互聯網
上載者:User

標籤:工作   問題   節奏   protect   其他   重點   原則   區別   log   

前言

這個月一直沒更新,就是一直在讀這本《Java編程思想》,這本書可以在Java業界被傳神的一本書,無論誰談起這本書都說好,不管這個人是否真的讀過這本書,都說啊,這本書很好。然後再看這邊書的厚度,哇塞,厚的真的不止一點點,所以很多人看了沒多久就放棄了,看不下去,但是基於它的厚度,就說,這是一本好書。也有人說,看了沒什麼用的一本書,甚至還去嘲笑那些正在看的人,說還不如看點實際的技術。那麼在我的世界裡,如果一本書沒有讀過,如果妄加評論的話,沒有任何的意義。所以我真的仔仔細細讀了下來,書上也寫了很多的筆記,但是我不會把它們都寫下來,因為太多了。

不過,確實要把這麼厚的書讀薄,是真的不容易。我想了很多種方式去記錄我的讀書筆記,但是最後都覺得不好,我覺得我的筆記應該有下面的幾個作用。

1、作為一個線索,以後我自己能快速的回顧和查詢。

2、已經知道的,不提及;不知道的,重點記錄。

3、讓即使沒有看過的人也能知道裡面到底有什麼值得他們去看的。

所以最後我決定用一種提問的方式,或者是一種陳述的方式,來記錄我的讀書筆記,如果你能回答出下面的提問,或者能理解陳述的內容,那麼證明書中的內容其實你已經瞭解。如果回答不出,或者答案不清晰不確定,那麼你可以網上去查詢這個問題的答案,或者翻閱書籍。

下面就是我記錄的所有筆記。

 

筆記部分

1、什麼是OOP?

2、public、private、protected的許可權

3、什麼是組合?什麼是繼承?

4、Java記憶體的分配方式

5、對象和對象的引用

6、java虛擬機器記憶體回收的基本策略;停止-複製;標記-清掃;

7、控制對成員的存取權限是為了:讓使用者不要觸碰他們不該觸碰的部分,為了讓類庫的設計者可以更改類的內部工作方式

8、組合和繼承如何選擇?

9、final、static、和其對應方法和塊載入和初始化的順序

10、多態的作用是消除類型之間的耦合關係,多態是一項讓程式員:“將改變的事物與未邊的事物分離開來”的技術。

11、用繼承表達行為間的差異,並用欄位表達狀態上的變化

12、介面和抽象類別的對比

13、匿名內部類

14、泛型的作用是可以在編譯期防止將錯誤類型的對象放置到容器中

15、容器之間的對比,如ArrayList和LInkedList等,再比如set、hashset、treeset等

16、優先隊列PriorityQueue

17、異常處理的一個重要原則是“只有在你知道如何處理的情況下才捕獲異常”

18、“報告”功能是異常的精髓所在

19、String的不可變性

20、StringBuffer和StringBuilder

21、所有的類都是在對於其第一次使用時,動態載入到JVM中的

22、載入-》連結-》初始化

23、instanceof是什麼方法?

24、什麼是動態代理?

25、利用泛型方法封裝工具類

26、在泛型代碼內部,無法獲得任何有關泛型參數類型的資訊。

27、數組區別於其他容器的三個方面:效率,類型,儲存基本類型的能力

28、HashMap的內部是如何?的?

29、使用I\O操作檔案時要注意什嗎?

30、什麼是對象序列化

31、enum和switch是一對冤家

32、註解為我們在代碼中添加資訊提供了一種形式化的方法,使我們可以在稍後的某個時刻方便的使用這些資料。

33、註解能協助我們避免編寫累贅的部署描述檔案。

34、進程和線程,進程是運行在它自己地址空間內的自包容的程式,一個線程是在進程中的一個單一的順序控制流程。

35、實現線程的兩種方式

36、線程池的作用

37、加鎖防止兩個任務訪問相同的資源,隱式,顯式

38、volatile關鍵字是做什麼用的

39、wait與notify和notifyAll

40、死結的四個條件:至少有一個不能共用的資源、至少有一個任務它必須持有一個資源且正在等待擷取一個當前被別的任務持有的資源、資源不能被任務搶佔,必須有迴圈等待

41、防止死結只要破壞四個條件中的任意一個

42、有很多免鎖容器如ConcurrentHashMap等

43、確定多個線程不會同時讀取和改變一個資源,這就是線程產生的最大難題

 

 

個人總結

作為現代快節奏的生活之下,能靜下心來看書,著實不容易,所以我都覺得我看到的不夠仔細,很多時候也漏下了很多重點。不過我相信你能找到它們的。

對於這本書來說,讀完之後我發現有幾個你需要注意的地方

1、這本書之所以大家都認為它好,是因為它涵蓋了JAVA語言幾乎所有的基礎,它就如同一個博物館,所有的藏品都已擺放整齊。

2、這本書的代碼比文字更厲害,我可以準確的說,我在書上的筆記幾乎很多都是在給代碼寫注釋,同樣是一頁,代碼比文字至少要花費兩倍的時間去看,如果你直接跳過,那麼你將錯過很多精彩的部分。

3、設計模式在這本書裡面靈活的穿插著,我真的慶幸我在看這本書之前看了設計模式,不然看書的過程中很多時候會不理解它說的設計模式是什麼意思,從而看了之後,我也更加理解了一些設計模式的使用。

4、現在網路發達,很多問題網上都有現成的答案,所以很少會再翻開書去尋找,而且這本書太重了,不適合攜帶,所以請你看書的時候保持一顆心,一遍理解,不懂就記。

5、盡信書不如無書,現在發展這麼快,JAVA本身也不斷的發展,1.9都要有了,所以很多書上的東西或許過時,很多已經在曆史的長河中隱去了,所以看書的時候多看看外面的世界。

 

《Java編程思想》讀書筆記

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在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.