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

歡迎訪問 生活随笔!

生活随笔

當前位置: 首頁 > 编程语言 > java >内容正文

java

20175212童皓桢 《Java程序设计》第十周学习总结

發布時間:2024/1/8 java 29 豆豆
生活随笔 收集整理的這篇文章主要介紹了 20175212童皓桢 《Java程序设计》第十周学习总结 小編覺得挺不錯的,現在分享給大家,幫大家做個參考.

學號 2016-2017-2 《Java程序設計》第X周學習總結

教材學習內容總結

一、Java中的線程的狀態

建的線程在它的一個完整的生命周期中通常要經歷如下的四種狀態:

1.新建: 當一個Thread類或其子類的對象被聲明并創建時,新生的線程對象處于新建狀態。

2.運行 :線程必須調用start()方法(從父類繼承的方法)通知JVM,這樣JVM就會知道又有一個新一個線程排隊等候切換了。一旦輪到它來享用CPU資源時,此線程的就可以脫離創建它的主線程獨立開始自己的生命周期了。

3.中斷:有4種原因的中斷:

JVM將CPU資源從當前線程切換給其他線程,使本線程讓出CPU的使用權處于中斷狀態。

線程使用CPU資源期間,執行了sleep(int millsecond)方法,使當前線程進入休眠狀。

線程使用CPU資源期間,執行了wait()方法。

線程使用CPU資源期間,執行某個操作進入阻塞狀態。

4.死亡 :處于死亡狀態的線程不具有繼續運行的能力。線程釋放了實體

二、 Thread類與線程的創建

使用Thread創建線程通常使用的構造方法是:

Thread(Runnable target)

在創建線程對象時必須向構造方法的參數傳遞一個實現Runnable接口類的實例,該實例對象稱作所創線程的目標對象,當線程調用start()方法后,一旦輪到它來享用CPU資源,目標對象就會自動調用接口中的run()方法(接口回調)。

三、線程常用方法

1.start() : 線程調用該方法將啟動線程,使之從新建狀態進入就緒隊列排隊,一旦輪到它來享用CPU資源時,就可以脫離創建它的線程獨立開始自己的生命周期了。

2.run(): Thread類的run()方法與Runnable接口中的run()方法的功能和作用相同,都用來定義線程對象被調度之后所執行的操作,都是系統自動調用而用戶程序不得引用的方法。

3.sleep(int millsecond): 優先級高的線程可以在它的run()方法中調用sleep方法來使自己放棄CPU資源,休眠一段時間。

4.isAlive(): 線程處于“新建”狀態時,線程調用isAlive()方法返回false。在線程的run()方法結束之前,即沒有進入死亡狀態之前,線程調用isAlive()方法返回true。

5.currentThread():該方法是Thread類中的類方法,可以用類名調用,該方法返回當前正在使用CPU資源的線程。

6.interrupt() :一個占有CPU資源的線程可以讓休眠的線程調用

四、 線程同步

在處理多線程問題時,我們必須注意這樣一個問題:當兩個或多個線程同時訪問同一個變量,并且一個線程需要修改這個變量。我們應對這樣的問題作出處理。

在處理線程同步時,要做的第一件事就是要把修改數據的方法用關鍵字synchronized來修飾。

所謂線程同步就是若干個線程都需要使用一個synchronized修飾的方法。

五、 線程聯合

一個線程A在占有CPU資源期間,可以讓其它線程調用join()和本線程聯合,如:
B.join();

教材學習中的問題和解決過程

教材學習有問題先去https://shimo.im/doc/1i1gldfsojIFH8Ip/看看,如果別人沒有提出相同問題,可以編輯文檔添加,然后把自己提出的問題復制到下面:

  • 問題1:實作Runnable于run()中定義額外流程好?還是繼承Thread于run()中定義額外流程好?
  • 問題1解決方案:實作Runnable接口的好處就是較有彈性,你的類別還有機會繼承其它類別

若繼承了Thread,那該類別就是一種Thread,通常是為了直接利用Thread中定義的一些方法,才會繼承Thread來實作

如果主線程中啟動了額外線程,預設會等待被啟動的所有線程都執行完run()方法才中止JVM。

如果一個Thread被標示為Daemon線程,在所有的非Daemon線程都結束時,JVM自動就會終止。

代碼調試中的問題和解決過程

代碼托管

上周考試錯題總結

  • 下列關于HashMap泛型類常用方法的介紹,正確的是

A .public boolean isEmpty()如果此映射不包含鍵-值映射關系,則返回 true。

B .public V get(Object key)返回指定鍵所映射的值;如果此映射不包含該鍵的映射關系,則拋出異常。

C .public V put(K key, V value) 在此映射中關聯指定值與指定鍵。如果該映射以前包含了一個該鍵的映射關系,則以先定義的值為準。

D .public Object clone()返回此 HashMap 實例的淺表副本:并不復制鍵和值本身。

解析:查詢API。B項:如果此映射不包含該鍵的映射關系,則返回null。C項:如果該映射以前包含了一個該鍵的映射關系,則舊值被替換。

結對及互評

評分標準

  • 正確使用Markdown語法(加1分):
    • 不使用Markdown不加分
    • 有語法錯誤的不加分(鏈接打不開,表格不對,列表不正確...)
    • 排版混亂的不加分
  • 模板中的要素齊全(加1分)
    • 缺少“教材學習中的問題和解決過程”的不加分
    • 缺少“代碼調試中的問題和解決過程”的不加分
    • 代碼托管不能打開的不加分
    • 缺少“結對及互評”的不能打開的不加分
    • 缺少“上周考試錯題總結”的不能加分
    • 缺少“進度條”的不能加分
    • 缺少“參考資料”的不能加分
  • 教材學習中的問題和解決過程, 一個問題加1分

  • 代碼調試中的問題和解決過程, 一個問題加1分

  • 本周有效代碼超過300分行的(加2分)
    • 一周提交次數少于20次的不加分
  • 其他加分:
    • 周五前發博客的加1分
    • 感想,體會不假大空的加1分
    • 排版精美的加一分
    • 進度條中記錄學習時間與改進情況的加1分
    • 有動手寫新代碼的加1分
    • 課后選擇題有驗證的加1分
    • 代碼Commit Message規范的加1分
    • 錯題學習深入的加1分
    • 點評認真,能指出博客和代碼中的問題的加1分
    • 結對學習情況真實可信的加1分
  • 扣分:
    • 有抄襲的扣至0分
    • 代碼作弊的扣至0分
    • 遲交作業的扣至0分
  • 點評模板:

    • 博客中值得學習的或問題:
      • xxx
      • xxx
      • ...
    • 代碼中值得學習的或問題:
      • xxx
      • xxx
      • ...
    • 基于評分標準,我給本博客打分:XX分。得分情況如下:xxx

    • 參考示例

    點評過的同學博客和代碼

    • 本周結對學習情況
      • 結對同學學號1
      • 結對照片
      • 結對學習內容
        • XXXX
        • XXXX
        • ...
    • 上周博客互評情況(只要鏈接,具體點評放相應博客下)

      • 學號1
      • 學號2
      • 學號3
      • 學號4
      • ...

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

    xxx
    xxx

    學習進度條

    代碼行數(新增/累積)博客量(新增/累積)學習時間(新增/累積)重要成長
    目標5000行30篇400小時
    第一周6/61/120/20
    第二周245/2511/218/38
    第三周633/8841/322/60
    第四周305/11891/430/90
    第五周410/15993/730/120
    第六周1135/27343/1030/150
    第七周781/35153/1330/180
    第八周710/42253/1630/210
    第九周775/50002/1830/240
    第十周933/59331/1930/270

    嘗試一下記錄「計劃學習時間」和「實際學習時間」,到期末看看能不能改進自己的計劃能力。這個工作學習中很重要,也很有用。
    耗時估計的公式
    :Y=X+X/N ,Y=X-X/N,訓練次數多了,X、Y就接近了。

    參考:軟件工程軟件的估計為什么這么難,軟件工程 估計方法

    • 計劃學習時間:XX小時

    • 實際學習時間:XX小時

    • 改進情況:

    (有空多看看現代軟件工程 課件
    軟件工程師能力自我評價表)

    參考資料

    • Java學習筆記(第8版)

    • 《Java學習筆記(第8版)》學習指導
    • ...

    轉載于:https://www.cnblogs.com/thz666/p/10815420.html

    總結

    以上是生活随笔為你收集整理的20175212童皓桢 《Java程序设计》第十周学习总结的全部內容,希望文章能夠幫你解決所遇到的問題。

    如果覺得生活随笔網站內容還不錯,歡迎將生活随笔推薦給好友。