Java開篇一:安裝環(huán)境和基礎(chǔ)知識(shí)點(diǎn)
01
Java安裝環(huán)境
步驟:1.下載Java的壓縮包,解壓放到?jīng)]有中文的目錄中
? ? ? ? ??2.在電腦的高級(jí)環(huán)境變量里,配置Java的JVM的classpath路徑和變量
? ? ? ? ? 3.在控制臺(tái)中輸入Java -version或者Javac,說明安裝成功。
02
安裝MySQL數(shù)據(jù)庫
步驟:1.下載安裝MySQL的壓縮包
?? ? ? ? ?2.在電腦的高級(jí)環(huán)境變量里,path里配置到mysql目錄bin的路徑
??? ? ? ? 3.在my-default.ini配置路徑
? ? ? ? ??4.初始化
?? ? ? ? ?5.啟動(dòng)msyql服務(wù):net ?start mysql
??? ? ? ? 6.修改密碼,修改配置遠(yuǎn)程連接
03
安裝開發(fā)工具
1、安裝idea 2、安裝Navicat Premium 3、安裝xshell??4、安裝vscode
5、安裝tyora ?? 6、安裝語雀? ? 7、安裝Everything ? 8、安裝xmind
-安裝以上的軟件,一般正常的開發(fā)工作都可以滿足了,有需要的在我的公眾號(hào)里資源里領(lǐng)取。

基礎(chǔ)知識(shí)點(diǎn)

PICK OF THE WEEK
傳統(tǒng):首選都是我們的編寫:第一個(gè)HelloWorld 程序
以下我們通過一個(gè)簡單的實(shí)例來展示 Java 編程,創(chuàng)建文件 HelloWorld.java(文件名需與類名一致), 代碼如下:
public?class?HelloWorld?{
? ?public?static?void?main(String[]?args) {
? ? ? ?System.out.println("Hello World");
? }
}
注意:注:**String args[]** 與 String[] args 都可以執(zhí)行,但推薦使用 String[] args*,這樣可以避免歧義和誤讀。*
執(zhí)行命令解析:
以上我們使用了兩個(gè)命令 javac 和 java。
javac HelloWorld.java文件
java ? HelloWorld
01
Java的語法
一個(gè) Java 程序可以認(rèn)為是一系列對(duì)象的集合,而這些對(duì)象通過調(diào)用彼此的方法來協(xié)同工作。下面簡要介紹下類、對(duì)象、方法和實(shí)例變量的概念。
對(duì)象:對(duì)象是類的一個(gè)實(shí)例,有狀態(tài)和行為。例如,一條狗是一個(gè)對(duì)象,它的狀態(tài)有:顏色、名字、品種;行為有:搖尾巴、叫、吃等。
類:類是一個(gè)模板,它描述一類對(duì)象的行為和狀態(tài)。
方法:方法就是行為,一個(gè)類可以有很多方法。邏輯運(yùn)算、數(shù)據(jù)修改以及所有動(dòng)作都是在方法中完成的。
實(shí)例變量:每個(gè)對(duì)象都有獨(dú)特的實(shí)例變量,對(duì)象的狀態(tài)由這些實(shí)例變量的值決定。

基本規(guī)范
編寫Java程序時(shí),應(yīng)該注意以下幾點(diǎn):
大小寫敏感:Java 是大小寫敏感的,這就意味著標(biāo)識(shí)符 Hello 與 hello 是不同的。
類名:對(duì)于所有的類來說,類名的首字母應(yīng)該大寫。如果類名由若干單詞組成,那么每個(gè)單詞的首字母應(yīng)該大寫,例如 MyFirstJavaClass 。
方法名:所有的方法名都應(yīng)該以小寫字母開頭。如果方法名含有若干單詞,則后面的每個(gè)單詞首字母大寫。
源文件名:源文件名必須和類名相同。當(dāng)保存文件的時(shí)候,你應(yīng)該使用類名作為文件名保存(切記 Java 是大小寫敏感的),文件名的后綴為 .java。(如果文件名和類名不相同則會(huì)導(dǎo)致編譯錯(cuò)誤)。
主方法入口:所有的 Java 程序由 public static void main(String[] args) 方法開始執(zhí)行。
建議可以去看看阿里巴巴開發(fā)手冊(cè)
Java 標(biāo)識(shí)符
Java 所有的組成部分都需要名字。類名、變量名以及方法名都被稱為標(biāo)識(shí)符。
關(guān)于 Java 標(biāo)識(shí)符,有以下幾點(diǎn)需要注意:
所有的標(biāo)識(shí)符都應(yīng)該以字母(A-Z 或者 a-z),美元符($)、或者下劃線(_)開始
首字符之后可以是字母(A-Z 或者 a-z),美元符($)、下劃線(_)或數(shù)字的任何字符組合
關(guān)鍵字不能用作標(biāo)識(shí)符
標(biāo)識(shí)符是大小寫敏感的
合法標(biāo)識(shí)符舉例:age、$salary、_value、__1_value
非法標(biāo)識(shí)符舉例:123abc、-salary
Java修飾符
像其他語言一樣,Java可以使用修飾符來修飾類中方法和屬性。主要有兩類修飾符:
訪問控制修飾符 : default, public , protected, private
非訪問控制修飾符 : final, abstract, static, synchronized
Java 變量
Java 中主要有如下幾種類型的變量
局部變量
類變量(靜態(tài)變量)
成員變量(非靜態(tài)變量)
整數(shù)運(yùn)算
Java的整數(shù)運(yùn)算遵循四則運(yùn)算規(guī)則,可以使用任意嵌套的小括號(hào)。四則運(yùn)算規(guī)則和初等數(shù)學(xué)一致。
要特別注意,整數(shù)由于存在范圍限制,如果計(jì)算結(jié)果超出了范圍,就會(huì)產(chǎn)生溢出,而溢出不會(huì)出錯(cuò),卻會(huì)得到一個(gè)奇怪的結(jié)果:
自增/自減
Java還提供了++
運(yùn)算和--
運(yùn)算,它們可以對(duì)一個(gè)整數(shù)進(jìn)行加1和減1的操作:
注意++
寫在前面和后面計(jì)算結(jié)果是不同的,++n
表示先加1再引用n,n++
表示先引用n再加1。不建議把++
運(yùn)算混入到常規(guī)運(yùn)算中,容易自己把自己搞懵了。
移位運(yùn)算
在計(jì)算機(jī)中,整數(shù)總是以二進(jìn)制的形式表示。
位運(yùn)算
位運(yùn)算是按位進(jìn)行與、或、非和異或的運(yùn)算。
與運(yùn)算的規(guī)則是,必須兩個(gè)數(shù)同時(shí)為1
,結(jié)果才為1
:
或運(yùn)算的規(guī)則是,只要任意一個(gè)為1
,結(jié)果就為1
:
非運(yùn)算的規(guī)則是,0
和1
互換:
異或運(yùn)算的規(guī)則是,如果兩個(gè)數(shù)不同,結(jié)果為1
,否則為0
:
對(duì)兩個(gè)整數(shù)進(jìn)行位運(yùn)算,實(shí)際上就是按位對(duì)齊,然后依次對(duì)每一位進(jìn)行運(yùn)算。
運(yùn)算優(yōu)先級(jí)
在Java的計(jì)算表達(dá)式中,運(yùn)算優(yōu)先級(jí)從高到低依次是:
()
!
~
++
--
*
/
%
+
-
<<
>>
>>>
&
|
+=
-=
*=
/=
記不住也沒關(guān)系,只需要加括號(hào)就可以保證運(yùn)算的優(yōu)先級(jí)正確。
類型自動(dòng)提升與強(qiáng)制轉(zhuǎn)型
在運(yùn)算過程中,如果參與運(yùn)算的兩個(gè)數(shù)類型不一致,那么計(jì)算結(jié)果為較大類型的整型。例如,short
和int
計(jì)算,結(jié)果總是int
,原因是short
首先自動(dòng)被轉(zhuǎn)型為int
:
即將大范圍的整數(shù)轉(zhuǎn)型為小范圍的整數(shù)。強(qiáng)制轉(zhuǎn)型使用(類型)
,例如,將int
強(qiáng)制轉(zhuǎn)型為short
:
要注意,超出范圍的強(qiáng)制轉(zhuǎn)型會(huì)得到錯(cuò)誤的結(jié)果,原因是轉(zhuǎn)型時(shí),int
的兩個(gè)高位字節(jié)直接被扔掉,僅保留了低位的兩個(gè)字節(jié):
因此,強(qiáng)制轉(zhuǎn)型的結(jié)果很可能是錯(cuò)的。
浮點(diǎn)數(shù)運(yùn)算
浮點(diǎn)數(shù)運(yùn)算和整數(shù)運(yùn)算相比,只能進(jìn)行加減乘除這些數(shù)值計(jì)算,不能做位運(yùn)算和移位運(yùn)算。
類型提升
如果參與運(yùn)算的兩個(gè)數(shù)其中一個(gè)是整型,那么整型可以自動(dòng)提升到浮點(diǎn)型:
需要特別注意,在一個(gè)復(fù)雜的四則運(yùn)算中,兩個(gè)整數(shù)的運(yùn)算不會(huì)出現(xiàn)自動(dòng)提升的情況
溢出
整數(shù)運(yùn)算在除數(shù)為0
時(shí)會(huì)報(bào)錯(cuò),而浮點(diǎn)數(shù)運(yùn)算在除數(shù)為0
時(shí),不會(huì)報(bào)錯(cuò),但會(huì)返回幾個(gè)特殊值:
NaN
表示Not a NumberInfinity
表示無窮大-Infinity
表示負(fù)無窮大
強(qiáng)制轉(zhuǎn)型
可以將浮點(diǎn)數(shù)強(qiáng)制轉(zhuǎn)型為整數(shù)。在轉(zhuǎn)型時(shí),浮點(diǎn)數(shù)的小數(shù)部分會(huì)被丟掉。如果轉(zhuǎn)型后超過了整型能表示的最大范圍,將返回整型的最大值。
布爾運(yùn)算
對(duì)于布爾類型boolean
,永遠(yuǎn)只有true
和false
兩個(gè)值。
布爾運(yùn)算是一種關(guān)系運(yùn)算,包括以下幾類:
比較運(yùn)算符:
>
,>=
,<
,<=
,==
,!=
與運(yùn)算
&&
或運(yùn)算
||
非運(yùn)算
!
關(guān)系運(yùn)算符的優(yōu)先級(jí)從高到低依次是:
!
>
,>=
,<
,<=
==
,!=
&&
||
短路運(yùn)算
布爾運(yùn)算的一個(gè)重要特點(diǎn)是短路運(yùn)算。如果一個(gè)布爾運(yùn)算的表達(dá)式能提前確定結(jié)果,則后續(xù)的計(jì)算不再執(zhí)行,直接返回結(jié)果。
因?yàn)?code>false && x的結(jié)果總是false
,無論x
是true
還是false
,因此,與運(yùn)算在確定第一個(gè)值為false
后,不再繼續(xù)計(jì)算,而是直接返回false
。
三元運(yùn)算符
java還提供一個(gè)三元運(yùn)算符b ? x : y
,它根據(jù)第一個(gè)布爾表達(dá)式的結(jié)果,分別返回后續(xù)兩個(gè)表達(dá)式之一的計(jì)算結(jié)果

敬頌冬綏
字符和字符串
在Java中,字符和字符串是兩個(gè)不同的類型。
區(qū)別:
字符類型char
是基本數(shù)據(jù)類型,它是character
的縮寫。一個(gè)char
保存一個(gè)Unicode字符:
和char
類型不同,字符串類型String
是引用類型,我們用雙引號(hào)"..."
表示字符串。
一個(gè)字符串可以存儲(chǔ)0個(gè)到任意個(gè)字符:
字符串的連接都是用 +
如果我們要表示多行字符串,使用+號(hào)連接會(huì)非常不方便:
String s = "first line \n"
? ? ??
? + "second line \n"
? ? ? ??
? + "end";
????????
?那就這樣寫
Java的字符串除了是一個(gè)引用類型外,還有個(gè)重要特點(diǎn),就是字符串不可變。
還有個(gè)是char是基本數(shù)據(jù)類型,string是引用數(shù)據(jù)類型。
下一篇:講Java的有趣的數(shù)組
總結(jié):安裝軟件和環(huán)境,這個(gè)我們的經(jīng)常做的事,務(wù)必掌握
?? ? ? ? ?有扎實(shí)的基礎(chǔ),才能展翅高飛,走的更遠(yuǎn),看的更遠(yuǎn),俗話說:基礎(chǔ)不牢,地動(dòng)山搖。
?? ? ? ? ? 學(xué)習(xí)就是這樣,溫故而知新,可以為師矣,加油,貴在堅(jiān)持。