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

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程资源 > 编程问答 >内容正文

编程问答

20145319 第五周学习总结

發(fā)布時(shí)間:2023/12/15 编程问答 62 豆豆
生活随笔 收集整理的這篇文章主要介紹了 20145319 第五周学习总结 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

20145319 《Java程序設(shè)計(jì)》第五周學(xué)習(xí)總結(jié)

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

本周學(xué)習(xí)了教材的第八章、第九章,在經(jīng)過前幾周的學(xué)習(xí)之后,我們大致了解了java中的基礎(chǔ)語法,函數(shù)構(gòu)造調(diào)用,以及當(dāng)以項(xiàng)目為基礎(chǔ)設(shè)計(jì)代碼時(shí)我們?cè)撊绾问褂美^承和接口,對(duì)java已有初步了解,因此這兩章我們要進(jìn)一步學(xué)習(xí)的是如何處理程序中的異常狀況。

1. 異常處理語法

  • 定義:java中所有錯(cuò)誤都會(huì)被打包成一個(gè)對(duì)象,所以可以嘗試(try)捕捉(catch)錯(cuò)誤對(duì)象,并做出相應(yīng)處理。
  • try:多和catch搭配使用,JVM會(huì)嘗試try區(qū)塊中的程序代碼。如果發(fā)生了錯(cuò)誤,即立刻跳出錯(cuò)誤點(diǎn),比較catch()中聲明的錯(cuò)誤類型,如果吻合就執(zhí)行catch區(qū)塊中的代碼
  • catch:和try搭配使用,如果catch()聲明的錯(cuò)誤類型和try區(qū)塊中的代碼錯(cuò)誤類型一致,就立刻執(zhí)行catch區(qū)塊中的代碼
  • Multi-catch(多重捕捉):在實(shí)際中,經(jīng)常會(huì)遇見數(shù)個(gè)類型的catch區(qū)塊在做同樣的事情,而且catch區(qū)塊內(nèi)容都是重復(fù)的,這樣不僅不方便撰寫也不方便維護(hù),這時(shí)候可以寫成如下模式

    try{; }catch(IOException|InterruptedException|ClassCastException){; }
  • throws:操作對(duì)象拋出受檢對(duì)象,但目前環(huán)境信息卻不足以處理異常,則無法使用try、catch處理,此時(shí)就要用throws聲明此方法會(huì)拋出的異常類型或其父類型,否則會(huì)編譯失敗。(在同時(shí)使用繼承時(shí),如果父類某個(gè)方法聲明throws某些異常,子類重新定義該方法時(shí)不可以throws父類方法中沒聲明的其他異常。throws父類方法聲明的異常的父類

  • throw:在catch區(qū)塊操作完部分錯(cuò)誤處理之后,可以使用throw再將異常拋出

  • assert:分為assert booleanexpression;和assert booleanexpression:detailexpression;如果booleanexpression為true則什么都不發(fā)生若為false,則會(huì)發(fā)生java.lang.AssertionError
  • 2. 異常繼承架構(gòu)

  • 設(shè)計(jì)錯(cuò)誤對(duì)象都繼承自java.lang.Throwable類,Throwable定義了取得錯(cuò)誤信息,堆棧追蹤(Stack Trace)等方法,它有兩個(gè)子類:java.lang.Error和java.lang.Exception
  • 3. 異常和資源管理

  • finally:在調(diào)用文檔時(shí),當(dāng)文檔讀取完或者不使用時(shí)就應(yīng)該close()關(guān)閉文檔,但是如果程序在Scanner.close()前發(fā)生了異常,該語句就會(huì)因中斷而不被執(zhí)行,finally可以和try、catch搭配,若寫有fianlly區(qū)塊,則finally區(qū)塊就一定要被執(zhí)行,將Scanner.close();寫在fianlly區(qū)塊中就可以避免上述情況。
  • Try-With-Resources: 要自動(dòng)關(guān)閉資源的對(duì)象撰寫在try()中,如果無需catch處理異常,可以不用寫,也不用寫finally區(qū)塊
  • 4. Collection架構(gòu)

  • 如同數(shù)據(jù)結(jié)構(gòu)一樣,在java.util.Collection中有增、刪、遍歷對(duì)象 add: remove: clear: size: iterator:
  • set:在收集過程中若有相同對(duì)象,想要重復(fù)收集,可以使用set接口的操作對(duì)象
  • 5.具有索引的List

    核心方法?add(int index, E element)、?remove(int index)、set(int index, E element)

  • ArrayList:相當(dāng)于數(shù)據(jù)結(jié)構(gòu)的線性表,

  • LinkedList:相當(dāng)于數(shù)據(jù)結(jié)構(gòu)鏈?zhǔn)奖?/p>

  • ?

    6. 鍵值對(duì)應(yīng)的Map

    • 如網(wǎng)絡(luò)搜索,根據(jù)關(guān)鍵字可以找到對(duì)應(yīng)數(shù)據(jù),程序設(shè)計(jì)中的java.util.Map接口的操作對(duì)象用來簡(jiǎn)歷鍵值對(duì)應(yīng)數(shù)據(jù)
    • 常用的Map操作類有HashMap、TreeMap與Properties三種。
    • 如果想取得Map中所有的鍵,可以調(diào)用Map的keySet()返回Set對(duì)象。由于鍵是不重復(fù)的,所以使用Set操作返回或者使用values()返回Collection對(duì)象

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

    • 在編寫書上課后習(xí)題的代碼時(shí)經(jīng)常遇見args[0],開始并不清楚args[0]代表什么,只記得在最開始學(xué)java時(shí),要打開main方法就一定要寫public static void main(String[] args),后面才知道args是一個(gè)字符串?dāng)?shù)組的變量名,不是關(guān)鍵字,是arguments的縮寫,只是一個(gè)默認(rèn)名。String[ ] args表示給主方法傳一個(gè)字符串?dāng)?shù)組
    • 如何指定命令行自變量?
    • 其實(shí)剛開始看的時(shí)候有一堆不懂的,現(xiàn)在也并不能說就真的懂了,但是一些零零碎碎的小問題的解決過程就不一一贅述了

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

    ?代碼:

    ?

    本來書上是問在沒有指定命令行自變量的情況下執(zhí)行程序會(huì)發(fā)生什么?但是由于自己并不熟悉命令行自變量,也不知怎么指定命令行自變量,只能猜測(cè)是catch()中的錯(cuò)誤類型不恰當(dāng)而導(dǎo)致了編譯的失敗,所以對(duì)程序做了一些修改

    修改:

    改成如上程序之后,沒有指定命令行自變量,程序編譯通過,運(yùn)行后輸出“輸入數(shù)字”

    代碼托管截圖:

    ?

    其他(感悟、思考等,可選)

    • 前幾周的學(xué)習(xí)其實(shí)都有點(diǎn)操之過急,正好這幾章也有與數(shù)據(jù)結(jié)構(gòu)相關(guān),可以和數(shù)據(jù)結(jié)構(gòu)的課程結(jié)合起來,接下來的假期正好可以休息一下也可以回顧一下之前學(xué)過的和最近所學(xué)的數(shù)據(jù)結(jié)構(gòu),感覺這樣效果會(huì)比較好。

    學(xué)習(xí)進(jìn)度條

    ?

    ?

    代碼行數(shù)(新增/累積)

    博客量(新增/累積)

    學(xué)習(xí)時(shí)間(新增/累積)

    重要成長(zhǎng)

    目標(biāo)

    3500行

    28篇

    300小時(shí)

    ?

    第五周

    200/1200

    1/5

    20/105

    ?

    第六周

    ?

    ?

    ?

    ?

    第七周

    ?

    ?

    ?

    ?

    第八周

    ?

    ?

    ?

    ?

    參考資料

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

    - ...

    ?

    轉(zhuǎn)載于:https://www.cnblogs.com/20145319zk/p/5343787.html

    總結(jié)

    以上是生活随笔為你收集整理的20145319 第五周学习总结的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

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