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

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

1、學習考覈方式,理解成績構成

  1. 首先是100分的構成,主要分爲週考的總計60,實驗的15分,團隊項目(博客報告和課堂展現)25分。
  2. 其次是扣分項目,大概分爲課堂表現、做業完成,若是態度端正的話,是不容易扣分的。
  3. 最後是加分項目,加分項目有很是多的種類,只要是積極學習均可以得到加分,好比積極寫博客、極提出或回答問題,總之加分和減分關鍵在於態度,有一個好的態度這10分仍是很容易獲得的。html

  4. 要特別提出的一點是待及格學生的管理辦法,這一點十分新穎,這樣的管理辦法很好的避免了平時悠閒考前加急的現象,能讓咱們把功夫下在日常。我很是支持,可是仍是不但願本身成爲這裏的一員。java

2、學習課前準備,掌握學習方法

  1. 課前準備:老師所提的前四個要求,咱們在上學期期末就應該都作到了。
  2. 學習方法:積極主動敲代碼,使用JUnit學習Java這篇文章讓我告訴了我一個很是不錯的實踐代碼的方法,就是敲書上的代碼,從我C語言的學習經從來看,學習編程實踐真的必不可少,而書的確是一個很是方便的實踐工具;經過學姐學長們整理的問題博客學習,也是一個很好的辦法,可讓我少走許多彎路,避免犯一樣的錯誤;後面的文章比較有趣的是最綠色最高效,用win+r啓動經常使用程序和文檔讓我很好的利用起了win+r組合鍵。

3、學習教材1、二章

第一章

Java平臺

  1. java最先叫作oak,生日公認是1995.5.23。
  2. java SE分爲:JVM(虛擬機)、JRE(執行環境)、JDK(工具,包括JRE)、Java語言
  3. 其餘的Java平臺有:龐大的Java EE、小型的Java ME,有不一樣的適用方向。
  4. JCP委員會保持了Java的跨平臺優點
  5. 學習Java的一條路徑:
  • 深刻了解JVM、JRE、JDK;
  • 理解封裝、繼承、多態;掌握經常使用Java SE API;(以上三種後續應該有更深刻的瞭解)
  • 學習容器觀念:書上的說法我仍是沒有理解,因而在這篇博客中Java 容器的概念我獲得的更形象的解釋,更能理解林老師的解釋:linux

    Web容器是Servlet/JSP惟一認識的HTTP服務器,是使用Java撰寫的應用程序,運行於JVM之上。git

  • 研究原始碼項目
  • 學習設計模式與重構:這一點感受相似於算法,就是根據經驗找到合理的編程算法。
  • 熟悉相關開發工具:我選擇跟着課原本使用NetBeans IDE。算法

JVM/JRE/JDK

  1. JVM詳解:實質上是操做系統,充當翻譯官的角色,將 .java 文件翻譯成.class使Java程序完成跨平臺(JVM的可執行文件就是 .class文件)
  2. 區分JRE與JDK:JDK包括了Java程序語言、工具程序與JRE,JRE則包括了部署技術、Java SE API與JVM。

JAVA SE的組成
3.安裝JDK:編程

JDK 安裝完成

第二章

從Hello World開始

  1. 一個簡單的Hello World程序分爲如下幾步:
  • 定義類:定義關鍵詞(public class)+類名稱(HelloWorld)
  • 定義區塊,用「{}」
  • 定義main(),也就是程序的進入點
  • 撰寫描述
    大致上與C語言的模式相似。
    2.path:環境變量,分爲用戶環境變量、系統環境變量(優先執行),計算機會在輸入指令後沿着這些path尋找可執行文件。
    未設置path成功編譯

    設置完成path併成功編譯

    3.classpath:就是JVM系統的path,搜索的可執行文件爲 .class 文件
    也可用「.」來表示先搜索所在文件夾,如 「.;(某地址)」

搜索.jar文件時能夠直接描述文件地址+文件名來找。若是編譯時須要使用其餘類連接庫,必須指定classpath。
windows

管理原始碼與位碼文檔

  1. 將.class文件和.java文件分開管理:用-source指定從某文件夾找源文件,而-d指定了編譯完成的位碼存放文件夾
  2. 使用package管理類:
    表示Console類將放在cc.openhome.util類下,也就是說Console這個類將放在cc.openhoome.util包(package)

IDE的使用

  1. 選擇了NetBeansIDE
    簡單的HelloWorld程序
    設計模式

  2. -version變量能夠顯示執行的JRE版本;-verbose變量能夠確認位碼文檔的版本號。服務器

在windows下安裝git並託管代碼

主要參考了胡東暉學長的博客使用git推送代碼到開源中國以及IDEA環境下使用gitjvm

成功安裝git

成功託管代碼

碼雲界面

一些問題

  1. 仍是但願能聽聽老師對容器的講解。
  2. 我比較困惑的一點就是咱們的參考書中所有使用的是Windows系統在學習java,而老師推薦的是linux系統,若是是自主學習的話仍是跟着書本上來學要方便一些,可是不知道用Windows學習會不會比Linux學習效果差?
  3. 對於「類」這個定義不理解。
  4. 爲何double類型的數值進行運算得不到「數學上精確」的結果?
  5. 接口是否可繼承接口? 抽象類是否可實現(implements)接口? 抽象類是否可繼承實體類(concrete class)?
  6. 爲何不能夠說實現接口的子類從接口那裏繼承了常量和方法?
  7. 何爲多態的擴拓展性?
  8. 受檢異常是怎麼產生反作用的?
  9. 若是對象沒法操做Comparable怎麼辦?
  10. 字符處理裝飾器有什麼做用?
  11. 因爲線程沒法取得鎖定時爲何會形成阻斷?
  12. 接口的定義,默認方法和靜態方法有什麼區別?
  13. 應該怎麼理解API?
  14. 爲何調用channel的write方法以前必須調用buffer的flip方法?
  15. java如何實現國際化?
  16. 用戶沒法提供 JDBC URL、名稱、密碼時,該如何取得connection
  17. 靜態、動態代理的區別
  18. 如何實例化enum。

學習進度條

代碼行數(新增/累積) 博客量(新增/累積) 學習時間(新增/累積) 重要成長
目標 5000行 30篇 400小時
第一週 33/33 1/1 18/18
  • 附上腳本運行圖(此圖爲第二週運行腳本結果,第一週爲33行)

參考資料

相關文章
相關標籤/搜索