------- android培訓、java培訓、期待與您交流! ----------
一、Java的實現機制:1.1 虛擬機器機制
Java虛擬機器特點:多線程,動態串連,異常處理。
程式編譯執行過程:.Java來源程式——Java編譯器——產生位元組碼檔案.class——JVM Java解譯器——作業系統。
1.2 記憶體回收機制
系統自動回收不再使用的記憶體,提高安全性。
二、語言基礎:1.1 資料類型定義了資料的
性質、取值範圍、儲存方式以及所能進行的操作。包括基礎資料型別 (Elementary Data Type)和參考型別。
基礎資料型別 (Elementary Data Type):8種基本類型
- 整型:byte shortintlong
- 浮點型(實型):float double
- 布爾型:boolean
- 字元型:char
1.1.1 整型:
進位:十進位、八進位、十六進位、二進位轉換
佔用位元組:byte:1short:2int:4long:8
整數隱含 int 型。
1.1.2 浮點型
佔用位元組:float:4double:8
浮點數預設為 double 型。
1.1.3 boolean
值:true false 不能與其他類型相互轉換
1.1.4 字元型
char:2個位元組,Java中字元使用16位的Unicode碼錶示。
逸出字元\
1.2 變數和常量
變數分為局部變數,成員變數;
常量可使用final 關鍵字聲明,常量標識符 一般用大寫字母表示。如final int MIN = 0;
1.3 運算子和運算式1.3.1 算術運算子
一元運算子:+-++--
二元運算子:+-*/%
1.3.2 位元運算符
~非^異或&與|或>>右移<<左移>>>補零右移
1.3.3 關係運算子
==!=>=<=><
1.3.4 布林運算子
與&或 |非 !異或^短路與 &&短路或
||
1.3.5 三目運算子: 運算式?運算式1:運算式21.3.6 字串合并 "+"1.3.7 組合運算子 如 += 會將右邊的值強制轉換為左邊的類型參加運算
資料類型之間運算的轉換:
容量小的向容量大的轉換,型別提升。byte short 和char之間運算會自動轉換為int型在進行運算。
大轉小需要進行強制類型轉換,會損失精度。
運算子的優先順序和結合順序:
注意: 一元運算子如--++ 自右向左
System.out.println((int)(char)(byte)-1); 輸出結果為 65535
public static void main(String[] args){final String pig = "length: 10";final String dog = "length: " + pig.length();System.out.println("Animals are equal: " + pig==dog);//輸出flase 因為+號優先順序高於==}
1.4 流程式控制制
1.4.1 選擇語句
(1)ifelse 語句(2)switch 後的運算式只接受 byte short int char 4種類型的值
case 語句沒有順序,從case執行,以break結束
條件滿足時 則執行語句,直到遇見break
以default語句結束,default語句放在最後可以不要break
switch語句不適合判斷區間和布爾型
//JDK1.7增強switch功能
1.4.2迴圈結構
for迴圈:如果變數僅用作於迴圈變數,可以用for,for迴圈結束,則迴圈變數釋放。while迴圈:如果迴圈變數有其他用處,可以用while迴圈,將迴圈變數定義在迴圈體外。迴圈體內定義的變數範圍只在迴圈體內有效。
for的簡單無限迴圈 for(;;){}while的簡單無限迴圈while(true);累加思想:通過變數記錄每次變化的結果,通過迴圈,進行累加動作。計數器思想:通過變數記錄資料的狀態變化。通過迴圈完成。
迴圈嵌套:(大圈套小圈) 1、列印長方形,外迴圈控制行數,內迴圈控制列數
* 尖朝上,可使內迴圈條件隨外迴圈變數變化
* * 尖朝下,可使內迴圈變數隨外迴圈變數變化
* * * 列印九九乘法表
1.4.3轉向語句:
break語句:用於跳出switch選擇結構和迴圈結構,給迴圈加標號,可控制跳出迴圈的位置(內迴圈或外迴圈)continue語句:用於迴圈結構,提前結束本次迴圈,執行下一次迴圈,給迴圈加標號,可控制跳出迴圈的位置(內迴圈或外迴圈)break和continue單獨存在時,後面不能有語句,因為執行不到,編譯不通過。for迴圈執行continue語句後,跳出迴圈體,執行for迴圈中的運算式3,再判斷運算式2。
方法(函數):當方法類型為void時,方法體內的return語句可以省略。renturn用於結束函數。 不能在函數體重定義函數。定義函數:1、明確函數功能和返回結果 2、是否需要未知內容參與運算(參數類型和參數個數)
函數重載:當功能相同,但參數不同時,使用同一個函數名表示其功能,通過參數列表來區分調用哪一個函數。函數的重載和函數傳回型別無關。
------- android培訓、java培訓、期待與您交流! ----------