日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > java >内容正文

java

20155117王震宇 2006-2007-2 《Java程序设计》第5周学习总结

發(fā)布時間:2025/3/15 java 19 豆豆
生活随笔 收集整理的這篇文章主要介紹了 20155117王震宇 2006-2007-2 《Java程序设计》第5周学习总结 小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.

教材學(xué)習(xí)內(nèi)容總結(jié)

  • try & catch
    • java中的錯誤會被打包成對象,可以嘗試(try)捕捉(catch)代表錯誤的對象后做一些處理。如果發(fā)生錯誤,會跳到catch的區(qū)塊并執(zhí)行。
  • 異常結(jié)構(gòu)處理
    • 正則表達式
      • 在看這部分內(nèi)容的時候,看到了規(guī)則表示式一詞。要不是還有英文Regular Expression注釋根本記不起這就是正則表達式。沒想到這么古老的直翻詞語還能在新版的書上看到。前段時間還想起很久之前寫過相關(guān)的程序用做過濾匹配文本,這可以用作檢查代碼,匹配一下文本就好了,畢竟每個人的代碼風(fēng)格還是區(qū)別挺大的;至于換行、注釋這種低級的問題隨便寫個文本過濾就沒了。但是難點是在文本搜索匹配的策略優(yōu)化上,不注意的話時間復(fù)雜度高的驚人(廢話)。懶得想數(shù)據(jù)結(jié)構(gòu)和剪紙的方法也就懶得寫那個小工具,如果有興趣的同學(xué)能看到這篇沒什么人看的博客有了靈感的話不勝榮幸,順便能告訴我你想好的算法那就感激不盡了。
      • PS:千萬不要想字符串匹配(諸如kmp)的算法,對于雷同問題的解決效率低,當(dāng)然對付直接復(fù)制粘貼的懶人來說還是有用的。
  • 多重捕捉
    下面兩段代碼功能相同。
try{System.in.read();}catch (IOException ex){ex.printStackTrace();}catch (Exception ex){ex.printStackTrace();} try{System.in.read();}catch (IOException |Exception ex){ex.printStackTrace();}
  • throw
    • 任何流程中都可以throw(不是throws),不一定要在catch區(qū)塊里。但需要在方法上使用throws(不是throw)聲明。
  • assert
  • assert 語法:
assert boolean_expression; assert boolean_expression : detail_expression; ?boolean_expression 若為 true,則什么事都不會發(fā)生,如果為 false,則會發(fā)生 java.lang.AssertionError,此時若采取的是第二個語法,則會將 detail_expression 的結(jié)果顯示出來,如果當(dāng)中是個對象,則調(diào)用 toString() 顯示文字描述結(jié)果
  • 斷言
    • 使用時注意斷言客戶端調(diào)用方法前,已經(jīng)準備好某些前置條件(通常在private方法之中)
    • 斷言客戶端調(diào)用方法后,具有方法承諾的結(jié)果。
    • 斷言對象某個時間點下的狀態(tài)。
    • 使用斷言取代批注。
    • 斷言程序流程中絕對不會執(zhí)行到的程序代碼部分。
    • checkGreaterThanZero() 是一種前置條件檢查,如果程序上線后就不再需要這種檢查的話,可以將之以 assert取代,并在開發(fā)階段使用 -ea 選項,而程序上線后取消該選項
    • 使用斷言的時機:一定不能有 default 的狀況,也可以使用 assert 來取代
  • 使用Collection收集對象
    - 收集對象的行為,像是新增對象的 add()方法、移除對象的remove()方法等,都是定義在 java.util.Collection中
- 既然可以收集對象,也要能逐一取得對象,這就是java.lang.Iterable定義的行為,它定義了iterator()方法返回 java.lang.Iterable操作對象,可以讓你逐一取得收集的對象

教材學(xué)習(xí)中的問題和解決過程

操作comparable
按照教材的指示,我出現(xiàn)了和教材一樣的錯誤。

發(fā)現(xiàn)所謂的comparable就是C語言中qsort()函數(shù)需要自己寫的comp()比較原則函數(shù)。

類比qsort()比較原則的編寫經(jīng)驗,寫出了這里排序的comparable

代碼調(diào)試中的問題和解決過程

問題一:習(xí)慣用-1代表彈出標志,結(jié)果沒注意正則表達式規(guī)范導(dǎo)致不能正常終止程序。


問題二:調(diào)用toUpperCase()引發(fā)NullPointerException。

代碼托管

結(jié)對及互評

基于評分標準,我給本博客打分:10

學(xué)習(xí)進度條

代碼行數(shù)(新增/累積)博客量(新增/累積)學(xué)習(xí)時間(新增/累積)重要成長
目標5000行30篇400小時
第一周0/02/220/20
第二周251/2511/518/38
第三周651/9021/610/48
第四周300/14001/710/58
第四周696/21961/810/68

參考資料

  • Java學(xué)習(xí)筆記(第8版)

  • 《Java學(xué)習(xí)筆記(第8版)》學(xué)習(xí)指導(dǎo)
  • ...

轉(zhuǎn)載于:https://www.cnblogs.com/ikari/p/6624654.html

總結(jié)

以上是生活随笔為你收集整理的20155117王震宇 2006-2007-2 《Java程序设计》第5周学习总结的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯,歡迎將生活随笔推薦給好友。