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設定生成參數