Java學(xué)習(xí)(3)——語言基礎(chǔ)

1 Java 主類結(jié)構(gòu)

包聲明

一個Java程序是由若干個類組成的。
語句package Number聲明該類所在的包為Number。

聲明成員變量和局部變量

類的全局變量(成員變量):類的屬性 聲明在類體中
局部變量:方法中的屬性 聲明在方法體中

編寫主方法

main()方法是類體中的主方法,從{開始到}結(jié)束。
public、static、void分別是main()方法的權(quán)限修飾符、靜態(tài)修飾符、返回值修飾符。

Java中的main()方法必須聲明為public static void。

導(dǎo)入API類庫

Java中通過import關(guān)鍵字導(dǎo)入相關(guān)的類。
API文檔是程序開發(fā)人員不可或缺的工具

2 基本數(shù)據(jù)類型

有8種基本數(shù)據(jù)類型來存儲數(shù)值、字符和布爾值。

  1. 數(shù)值型
    整數(shù)類型 byte short int long
    浮點類型 float double
  2. 字符型
  3. 布爾型

整數(shù)類型

十進制:不能以0開頭,0除外
八進制:必須以0開頭
十六進制:必須以0x或0X開頭

數(shù)據(jù)類型 占用空間(位) 字節(jié)
byte 8 1
short 16 2
int 32 4
long 64 8

每種類型都有取值范圍,如byte為-128~127
超出范圍會出錯
對于long型,若賦給的值超出int范圍,則需要在數(shù)字后加L或1,表示該數(shù)值為長整數(shù)
如:long num = 2147483650L

浮點類型

數(shù)據(jù)類型 占用空間(位) 字節(jié)
float 32 4
double 64 8

小數(shù)默認(rèn)被看作double型
若使用float則需要在后面添加F或f。
double后面D或d,可加可不加。

字符類型

  1. char型
    字符類型char用于存儲單個字符,占用16位,2字節(jié)的內(nèi)存空間。
    單引號' '為字符型變量
    雙引號" "為字符串,即使只有一個字符。

定義char字符變量

char x = 'a';
char x = 97;

二者等價

  1. 轉(zhuǎn)義字符
    與C中含義相同。
    將轉(zhuǎn)義字符賦值給字符變量時,與字符常量值一樣,需要使用單引號。

  2. 布爾類型
    只有true和false兩個值。
    不能與整數(shù)類型轉(zhuǎn)換。
    boolen b = true;

3 變量與常量

標(biāo)識符和關(guān)鍵字

  1. 標(biāo)識符
    第一個字符不能是數(shù)字
    由任意順序的字母、下劃線、美元符號和數(shù)字組成,且不能是Java中的保留關(guān)鍵字。

  2. 關(guān)鍵字
    不可以作為標(biāo)識符來使用。

聲明變量

變量占用的內(nèi)存空間

程序執(zhí)行時,程序代碼會加載到內(nèi)存中的程序區(qū),數(shù)據(jù)暫時存儲在數(shù)據(jù)區(qū)中。

Java中允許使用漢字或其他語言文字作為變量名
int 年齡 = 21
但建議盡量不要使用這些語言文字作為變量名。

聲明常量

在Java中聲明常量,除了要指定數(shù)據(jù)類型以外,還需要通過final關(guān)鍵字進行限定。
final常量只能被賦值一次。
final double PI = 3.1415926D;

常量名通常使用大寫字母
當(dāng)定義的final常量屬于“成員變量”時,必須在定義時就設(shè)定它的初值,否則將會產(chǎn)生編譯錯誤。

變量的有效范圍

  1. 成員變量
    類體中所定義的變量。
    在整個類中都有效。
    分為兩種:
    實例變量:int x = 45;
    靜態(tài)變量(類變量):static int y = 90;
    靜態(tài)變量的有效范圍可以跨類,可以直接以類名.靜態(tài)變量的方式在其他類內(nèi)使用。

  2. 局部變量
    在方法內(nèi)部定義,“{”與“}”之間的代碼中聲明的變量,只在當(dāng)前代碼塊中有效。

變量的有效范圍

4 運算符(基本與C無二)

  1. 賦值運算符

  2. 算術(shù)運算符


  3. 自增和自減運算符


  4. 比較運算符


  5. 邏輯運算符

注意結(jié)合方向

&與&&的區(qū)別:
&會判斷兩個表達(dá)式
&&當(dāng)?shù)谝粋€表達(dá)式為false時不去判斷第二個了,直接輸出結(jié)果從而節(jié)省計算機判斷的次數(shù)。

  1. 位運算符
    針對兩個整形數(shù)據(jù)a、b的對應(yīng)位進行邏輯運算。

按位與&
按位或|
按位取反~
按位異或^
移位操作

移位操作
可以實現(xiàn)整數(shù)除以或乘以2n
例如:
y<<2與y*4的結(jié)果相同;y>>1與y%2的結(jié)果相同。

左移<< 右移>> 無符號右移>>>

左移:移空部分補0

右移:如果最高位是0 ,右移空的位就填0;
如果最高位是1,則右移空的位就填1。


右移 最高位是1的情況

無符號右移:左側(cè)被移空的高位都填入0

移位運算符適用的數(shù)據(jù)類型有:
byte short char int long

  1. 三元運算符
    條件式?值1:值2
    條件式值為true,取1,否則取2。
    等價于
    if …… else語句

數(shù)據(jù)類型轉(zhuǎn)換

  1. 隱式類型轉(zhuǎn)換


  2. 顯示類型轉(zhuǎn)換


代碼注釋與編碼規(guī)范

注釋

  1. 單行注釋 //
  2. 多行注釋
/*
注釋內(nèi)容
*/

多行注釋中可嵌套單行注釋

多行注釋中不可嵌套多行注釋

  1. 文檔注釋
    /** 注釋 */

編碼規(guī)范

  1. 每條語句單獨一行,分號結(jié)束
  2. 盡量每個變量的聲明單獨占一行
    對于局部變量應(yīng)在聲明的同時對其進行初始化。
  3. Java中關(guān)鍵詞之間的多個空格均被視作一個。
  4. 多加注釋
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容