20175212 《Java程序設計》第2周學習總結
學號 20175212 《Java程序設計》第2周學習總結
教材學習內容總結
1.數據類型
此節介紹的數據類型與C中常用的相比僅多了Boolean(邏輯類型)、byte(取值範圍:[-128,127])。
對於char類型的數據而言,Java的編碼類似於C中的ASCII碼,各種語言常用字符有其相對應的位置,並且可以通過強轉將字符和順序位置相互轉化。
特別的,Java中的char必定無符號。
2.輸入輸出數據
對於輸入而言,Java中的輸入方法和我之前接觸的C的方法不甚類似,因此我簡述自己進行類比記憶的方法,若出現理解錯誤還希望老師同學指出。
以書上例2-3為例:
其中的核心語句即,使用Scanner創建對象:
Scanner reader = Scanner(System.in);
以我理解類似於C中的定義結構體,reader即為定義後的新對象。
對於輸出而言,書中的例子基本都以System.out.println(“”+ +“” )
為例,這種輸出格式個人認為比 printf("格式控制部分",表達式) 方便
不少,不需要再次檢查變量的類型,也減少了出錯的可能性。
3.數組
數組的使用,基本就創建數組
int mytwo[][] = new int[3][4]
其他與C中區別不大。
4.第三章內容基本都與C中相同,都是一些基本得到語句,其中就按位運算符接觸的不多,以及在for循環語句中:的遍歷作用,其余的都是老東西不再贅述。
教材學習中的問題和解決過程
- 問題1:輸入基本型數據,使用Scanner有些記憶與理解困難
- 問題1解決方案:回憶上學期C語言學習中的結構體定義方法,用類比的形式進行記憶並練習。
- 問題2:對於某幾例中
import java.util.Scanner
不甚理解 - 問題2解決方案:通過搜索得知,就是導入 java.util 包下的 Scanner 類,導入後才能使用它。import java.util.Scanner的作用:用來構建Scanner對象。其中import的作用:加載已定義好的類或包導入支持類(可以是JDK基礎類或者自己編寫的類),可以供本類調用方法和屬性。
代碼調試中的問題和解決過程
本周的作業都以實現類為主,也不難理解,不易出錯,因此並未出現調試問題。
代碼托管
上周考試錯題總結
- 如果在Main.java中撰寫以下的程序代碼:
public class Main {
public static void main() {
System.out.println("Hello World");
}
}
以下描述何者正確?
A 執行時顯示Hello World
B 執行時出現NoClassDefFoundError
C 執行時出現出現找不到主要方法的錯誤
D 編譯失敗
正解為C,原因是不能理解題目選項的意思,經查證得知缺少了參數String[] args(一個字符串數組,用以接收來自程序執行時傳進來的參數。)
其他(感悟、思考等,可選)
同為程序設計,在學習Java時可以多與我們之前學習的C進行類比學習,感覺在在之後更深入的學習中會有不錯的效果。
學習進度條
代碼行數(新增/累積) | 博客量(新增/累積) | 學習時間(新增/累積) | 重要成長 | |
---|---|---|---|---|
目標 | 5000行 | 30篇 | 400小時 | |
第一周 | 6/6行 | 1/1 | 20/20 | |
第二周 | 245/251 | 1/2 | 18/38 | 掌握輸入格式 |
嘗試一下記錄「計劃學習時間」和「實際學習時間」,到期末看看能不能改進自己的計劃能力。這個工作學習中很重要,也很有用。
耗時估計的公式
:Y=X+X/N ,Y=X-X/N,訓練次數多了,X、Y就接近了。
參考:軟件工程軟件的估計為什麽這麽難,軟件工程 估計方法
- 改進情況:
(有空多看看現代軟件工程 課件
軟件工程師能力自我評價表)
參考資料
Java學習筆記(第8版)
《Java學習筆記(第8版)》學習指導
20175212 《Java程序設計》第2周學習總結