head first java第一章的學習
設計真正的應用程式
要用到main(),int,string,while和if,用來寫從99到0的程式..
本來很奇怪為什麼要用到string變數,看了程式之後明白,這個程式因為數量的不同,在詞彙表達上有區別,bottle和bottles。
整個程式最後呈現出來的效果,應該是童謠一樣,xx個瓶酒在牆上,要說兩遍,之後“拿下來,傳下去”。如果是結束的時候就不用說兩遍了,直接說沒有,然後迴圈結束。結束的控制條件是beerNum為0。所以需要迴圈和控制語句。
程式跑出來我會覺得有一點奇怪,99個瓶子的時候“xx個啤酒在牆上”只說了一次。程式碼中開頭和最後的判斷都要輸出一次才構成了兩次,結果第一次和最後一次就比較不一樣。我的想法如下
public class BeerSong{
public static void main(String[] args){
int beerNum=99;
String word="bottles";
while(beerNum>0){
if(beerNum==1)
{word="bottle";
}
System.out.print(beerNum+""+word+"of beer on the wall");
System.out.print(beerNum+""+word+"of beer on the wall");
System.out.print(beerNum+""+word+"of beer");
System.out.print("Take one down.");
System.out.print("Pass it around.");}//while迴圈結束
System.out.print("No more bottles of beer on the wall.");}//main()結束
}//BeerSong類結束
專家術語學習機
本質上這個章節就是一個例子程式,實現隨機輸出三個術語,所以要有三個陣列分別儲存可以輸出的字串,然後隨機生成序號,通過序號分別找三個字元陣列中的字串,最後輸出。
細節:
找長度——陣列.length
生成隨機數——Math.random生成的是0-1之間的double。故要乘以長度,並型別轉化成int。
輸出——先生成字串再輸出,而不是直接在println中輸出。
jvm和編譯器的作用
編譯器:檢查程式碼,保證程式碼安全,但是不是全部抓完(語法問題);java是一個編譯型語言,先編譯再解釋
jvm:(儲存許可權的安全問題),確保執行前沒人修改;讓編譯後的位元組碼檔案執行起來,當然啦,直接是二進位制檔案就可以執行
第一章過完了
來一個總結
知道了java程式如何執行;作為程式設計師編寫程式碼和執行程式碼的過程,並且理解;java的命名歷史;java大體上的程式結構;
一個簡單小程式中每一個單詞的含義;jvm和編譯器的作用和區別,設計的意義。
接下來一章
開始面對物件的學習。現在已知的情報:面對物件最核心的三個概念:封裝,繼承,多型。分別是為了形成物件,抽出共同型別的程式碼,父類運用子類程式碼功能而存在的。
目前的理解就是這樣,不知道今後的學習會是更深入還是改正一些想法中的錯誤。
第二章 引出類,以及介紹為什麼要有這個設計。我還想知道的是在自己程式設計中要如何設計類,但是大多數的程式設計工作好像就是明確需求,查詢要呼叫的API,以及學會api的使用,由於還沒有進入公司實習,也沒有做過大的專案,目前理解止步於此。
第三章 認識變數 雖然是認識變數,但我覺得是介紹了類之後不得不做的事情,因為要介紹引用變數這個變數型別,相比較而言,primitive變數就在這一章顯得不那麼重要
第四章 物件的行為 (就是介紹方法) 之後的概要和總結再進行擴充。to be continued
第五章 超強力方法 整個章節就是一個大game,編寫一整個程式,會談論到一些程式設計的方法;編寫程式要經歷的過程:偽碼,測試碼,真實碼。
第六章 認識java的API 經歷了上一個大程式,其實還是有不完美的地方,這個時候要用到java的api。如何學api,怎麼運用api,怎麼查詢api。(上一次看這本書的時候沒有實現,也沒有運用過api,什麼arraylist也沒有去深究,這原來是java內建的api而不是一個primitive型別)
第七章 物件村的優質生活 前面學到的是方法的運用,這一章就開始將類與類之間的聯絡了,是方法的更上一層次的東西。用繼承來防止子類中重複出現程式碼+定義共同的協議;多型的簡單介紹
第八章 深入多型 顧名思義。這一章節主要探討介面的重大意義、介面和多型的意義,以及多型的意義。
第九章 物件的前世今生 研究物件在內訓中的產生和消亡。由垃圾收集器控制。
有關物件導向的章節梳理至此,之後會進行深入、細緻的學習。
相關文章
- Head First Java學習筆記(7):繼承與多型Java筆記繼承多型
- [head first 設計模式] 第一章 策略模式設計模式
- head first java讀書筆記Java筆記
- Head First HTML 與 CSS(第二版)學習筆記HTMLCSS筆記
- Head First HTML and CSS (八)HTMLCSS
- Head First Python (一)Python
- Head First ,入門首選
- 《Head First 設計模式》:剩下的模式設計模式
- 《Head First 設計模式》:策略模式設計模式
- 「HEAD-FIRST」之觀察者模式模式
- Head First jQuery讀書筆記jQuery筆記
- 深度解讀Head First:公式篇公式
- 《Head First 設計模式》:單件模式設計模式
- 《Head First 設計模式》:外觀模式設計模式
- 《Head First 設計模式》:觀察者模式設計模式
- Head First 設計模式(1)-----策略模式設計模式
- Head first PHP & MySQL 中文版pdfPHPMySql
- 《Head First 設計模式》:模板方法模式設計模式
- 《Head First 設計模式》:狀態模式設計模式
- 《Head First 設計模式》:組合模式設計模式
- 《Head First Java》20200927讀書筆記Java筆記
- 學習總結(first week)
- Head First —— 我的程式設計啟蒙老師程式設計
- 《Head First Java》20201017讀書筆記Java筆記
- 《Head First 設計模式》:工廠方法模式設計模式
- Head First設計模式讀書筆記設計模式筆記
- Java基礎學習筆記 第一章Java筆記
- java 程式設計思想的學習筆記 - 第一章Java程式設計筆記
- 《Head First Java》20201009讀書筆記Java筆記
- 關於Head First設計模式中的策略模式的困惑設計模式
- Head First 設計模式(2)---觀察者(Observer)模式設計模式Server
- Head First 設計模式(3)----裝飾者模式設計模式
- Head First 設計模式 —— 13. 代理 (Proxy) 模式設計模式
- 《Head First 設計模式》:與設計模式相處設計模式
- Head First Javascript 程式設計讀書筆記(一)JavaScript程式設計筆記
- Head First Javascript 程式設計讀書筆記(二)JavaScript程式設計筆記
- Head First Javascript 程式設計讀書筆記(三)JavaScript程式設計筆記
- Head First Javascript 程式設計讀書筆記(四)JavaScript程式設計筆記