Java入門之基礎語法碎片知識彙總
## 標題Java入門之基礎語法碎片知識彙總
- List item
作為一個前端工程師,主要使用的語言是JavaScript,這是一門動態的弱型別語言。當我們學習Java這種強型別的靜態語言,首先最頭疼的就是需要區分定義各種不同的型別。int or Integer ? float or double ? array or ArrayList? 我在和後端吐槽Java這一點的時候,後端這樣跟我打趣道:“用JS先爽後痛苦,用Java是先痛苦後爽”,聽完這個我暫時能勉為其難的理解一下Java的“囉嗦”了。那我就來先“痛苦”一下,瞭解Java的資料型別,如下圖所示:
資料型別.png
資料型別.png
作為一個有過語言學習經驗的人,這些簡單的資料型別應該不難理解,定義之前稍作思考,一般問題不大,只是這個變化還需習慣一下。
這裡主要想說說Java的一個玩意兒(語法糖)——增強迴圈。
這種for迴圈是怎麼執行的?
對於陣列,這種語法糖實際上還是用的普通的 for 迴圈 對於集合,這種語法糖實際上是用的 iterator 迭代器迭代
優點: (1)優點: 使用更方便簡潔 缺點: (1)對於陣列來說,不能通過下標值訪問指定的元素,不便於進行復雜的迴圈 (2)“對於集合來說,與使用Interator相比,不能方便的刪除集合中的內容(在內部也是呼叫Interator)”,這一點我是閱讀資料看到的,通過我實際工作中的使用經驗,我的理解是:比如當前迴圈到 array[1], 我們在迴圈體中使用完以後array[1],不能在後面寫remove.array[1]。 結論: 除了簡單遍歷之外,例如:只需讀取,不建議使用增強的for迴圈。
類:是一個模板,定義一類物件的行為和狀態,一個類可以對應多個物件,多個方法。 物件:一個類的例項,有具體的狀態
靜態方法: 隸屬於類本身的方法,多個物件可以共享,最好用類的名字呼叫
那麼相同⽅法名,不同引數型別,就是平常說的過載(override)了,這裡並不需要特地去記過載、重寫這種抽象的概念,我們只需要具體到去區分方法的每個部分的組成就行了。
修飾符主要用來控制變數、類 的作⽤域和⼀些訪問許可權。不需要特地記,忘了就查一下,寫多了就熟悉了。
Screen Shot 2018-08-26 at 17.58.11.png
Screen Shot 2018-08-26 at 17.58.11.png
具體說一下static和final static:具有static修飾的⽅法和變數的類, 我們稱之為”靜態類” final:用final修飾的成員變數必須在宣告時初始化,或者在構造方法裡面初始化。
final <類>; —> 防⽌類被繼承
final <變數>; —> 防⽌變數被修改引⽤到另外⼀個物件, 可稱為 “常量” 。注意:常量指向的物件不能被修改。例如:
final <⽅法>; —> 防⽌⽅法被過載(override)
這一部分內容主要是api的使用,以下提供官方文件 (1) Number類:
(2) String 類
(3) ArrayList類
(4) HashMap 類
想學習java的小夥伴可以加程式設計學習群:859093189
學習並領取java0基礎學習資料呦!前10名可領取java0基礎公開課!