天天看點

java基礎文法

java簡介

java安裝時需要配置環境變量:

JAVA_HOME:jdk安裝路徑

path:%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin;

java的三大版本:

javaSE:标準版(桌面程式,控制台開發等。。。)

javaME:嵌入式開發(手機,家電。。已經放棄)

javaEE:E企業級開發(web段,伺服器端)

jdk:java Development Kit(Java開發者工具)

jre:Java Runtime Environment(java運作時環境)

jvm:java Virtual Machine(Java虛拟機)

一個數在計算機是通過2進制表示的,這是機器數。最高位是他的符号位,0為正,1為負。

ex:3的機器數為0000 0011,真值是3;

-3的機器數為1000 0011.真值是-3而不是131;

負數二進制計算:反碼=符号位不變,原碼所有位取反;補碼=反碼+1,此計算方式可逆

原碼就是符号位加上真值的絕對值(第一位表示符号,其餘位為數值)如8位2進制:

[+1]原 = 0000 0001

[-1]原 =1000 0001

8位2進制的取值範圍是

[1111 1111,0111 1111]—>[-127,128]

但是人為規定Java中byte類型是-128,127。

原因是0會有兩種表示方法+0和-0(1000 0000);印度人将-0為-128。設計的非常巧妙。

對于如果大于8位的有符号整數類型,-128的補碼剛好是1000 0000(計算機是利用補碼計算的);

127(0111 1111)加1(0000 0001)剛好等于-128(1000 0000),而-128(1000 0000)加1(0000 0001)剛好等于-127,形成了一個閉環,如時鐘。

計算機中減法運算可以換算成加法運算:如8-1=8+(-1)其補碼運算為:0000 1000+1111 1111=0000 0111(整數的原反補碼相同剛好是7)

而 -128+127—>為(1000 0000+0111 1111)剛好是-1(補:1111 1111)(反:1111 1110)(原:1000 0001)其中short的最小值是-32768,int最小值-(2的32次方)也是一樣的道理。

其中二進制位運算跟10進制乘法除法相同

小數的二進制表示法:乘二去整

基本類型:數值數類型和boolean類型

備注:

位元組(byte)類型代表:2進制的11111111

位(bit):計算機最小存儲機關,位元組中每個1都是1位。

1B(位元組)=8bit(位)

byte占1個位元組:-128—127

short占2個位元組:-32768—32767

int占4個位元組:-2147483648—2147483647

long占8個位元組:-9223372036854775808—9223372036854775807

float占4個位元組

double占8個位元組

char字元類型占2個位元組

boolean類型隻占1位隻有true和false(即0和1)

進制:

二進制表示:0b開頭

8進制:0開頭

十進制:正常數字

16進制:0x開頭

flaot:有限的離散的,有舍入誤差,接近但不等于;避免使用浮點數類型進行比較

例如:flaot f1=23123123123123;flaot f2=f1+1;

System.out.println(f1==f2);輸出結果時true。

通常使用資料工具類:BigDeciml

字元拓展:

所有的字元本質還是數字,字元類型可以轉化成數值類型(計算機原編碼都是由01組成)

編碼:Unicode編碼占2個位元組,通過編号标記漢字,可以處理任何語言的文字,最初時可以表示65536個字元(現已擴充)最初Excel也是最長有65536(格數)

例如:Unicode表中:a=97,A=65,字元還可以表示漢字

轉義字元:\t:制表符(相當于Tab鍵);\n換行

布爾值擴充:

boolean flag=true;

if(flag==true){};

if(flag){};

1和2效果相同

電腦的32位和64位差別:

32位:隻能用32位的CPU,最多支援4G記憶體

64位:能裝32位和 64位的CPU,最多支援128G記憶體

“==”比較對象時會從記憶體分析記憶體位址是否相等

命名規範:

所有變量變量、方法、類名:見名知意

類成員變量:首字母小寫和駝峰原則:moneySalary,出第一個單詞外後續每個單詞首字母都大寫。

局部變量:首字母小寫和駝峰原則

常量:大寫字母和下劃線:MAX_VALUE

類名:首字母大寫和駝峰原則:GoodMan

方法名:首字母小寫和駝峰原則:runRun();

算數運算符:+ ,— ,* , /,%,++,——

%是模運算(求餘),++自增a++即a=a+1,——自減

a++表示先指派再計算

++a表示先計算再指派

int a=1;

System.out,println(a++);//輸出1

System.out,println(++a);//輸出2

指派運算符:=

關系運算符:>,<,>=,<=,==,!=,instanceof

傳回結果是true或者false

邏輯運算符:&&,||,!

&&:邏輯與運算,相當于且也叫做短路與,兩邊都為真結果為真,若左邊條件為假則短路不知行右邊。

||:邏輯或運算,相當于或,有一邊為真,結果為真

!:邏輯非運算,邏輯取反

位運算符:&,|,^,~,>>,<<,>>>

條件運算符?:

擴充運算符:+=,-=,*=,/=

a+=b表示a=a+b;其餘三個也是一樣的

順序問題,第一個+号前是字元串時後續的都是拼接,不相加

int a=10,b=20;

System.out.println(""+a+b);//輸出1020

System.out.println(a+b+"");//輸出30

java的包機制相當于檔案夾,歸類管理所編寫的代碼

命名規則一般時公司域名的倒置:如www.baidu.com寫成com.baidu.www

javaDoc指令時用來

生成自己的API文檔

其參數資訊一般包括:

@author作者名

@version版本号

@since知名需要最早使用的jdk版本

@param參數名

@return傳回值情況

@throws異常抛出情況

指令行生成javadoc文檔:

javadoc -encoding UTF-8 -charset UTF-8 +類的路徑

idea 下:tools—>generate javadoc設定生成參數