? ? ? ? 從本周開始寫java學(xué)習(xí)筆記祸憋,每周總結(jié)一次仆葡,總結(jié)時(shí)間是周日蹂楣,計(jì)劃的是每周日不學(xué)新的知識(shí)俏站,復(fù)習(xí)總結(jié)本周學(xué)習(xí)的內(nèi)容。
? ? ? ?不要走的太快痊土,有時(shí)不時(shí)的回頭看看也會(huì)發(fā)現(xiàn)不一樣的風(fēng)景肄扎!
? ? ? ?java初探學(xué)習(xí)筆記(W1-week1)(這是我自己的學(xué)習(xí)筆記,記錄知識(shí)點(diǎn)和一些自己的理解施戴,雜亂無序)
目前學(xué)校開了java相關(guān)的課程反浓,但是每星期課時(shí)有限,而且講的速度太慢赞哗,現(xiàn)在主要是在網(wǎng)上自學(xué)雷则,目前自學(xué)的平臺(tái)和課程是:中國mooc《零基礎(chǔ)學(xué)java》、金旭亮老師的java課程(網(wǎng)站上有肪笋,最近剛更新java的課程)月劈、w3cschool的java相關(guān)課程。
小體會(huì):
1.學(xué)編程重要的是什么藤乙,是想法猜揪,有一個(gè)問題,如何通過編程實(shí)現(xiàn)她呢坛梁?
2.平時(shí)寫代碼的時(shí)候要養(yǎng)成寫適當(dāng)?shù)淖⑨尩牧?xí)慣
3.Perspective(透視圖)和View(視圖)
--------------------------------------------------------------
1.定義變量
<類型名稱><變量名稱>
int price;
int amount,price;
2.常量定義
final int price=100;
3.輸入
Scanner in = new Scanner(System.in);
4.java的安裝
創(chuàng)建java文件而姐,文件名要與類名一致
javac Hello.java該命令用于將java源文件編譯為class字節(jié)碼文件
java Hellojava后面跟的是java文件中的類名 其實(shí)是java
Hello.class后綴.class不能寫
5.Java分為三個(gè)體系:
JavaSE(J2SE)(Java2
Platform Standard Edition,java平臺(tái)標(biāo)準(zhǔn)版)
JavaEE(J2EE)(Java 2 Platform,Enterprise Edition划咐,java平臺(tái)企業(yè)版)
JavaME(J2ME)(Java 2 Platform Micro Edition拴念,java平臺(tái)微型版)钧萍。
6.在正式學(xué)習(xí)java并安裝配置開發(fā)環(huán)境之前,有必要了解一些有關(guān)Java的專業(yè)術(shù)語:
JDK(Java Development Kit):編寫Java程序的程序員使用的軟件
JRE(Java Runtime Environment):運(yùn)行Java程序的用戶使用的軟件
Server JRE(Java SE Runtime Environment):服務(wù)端使用的Java運(yùn)行環(huán)境
SDK(Software Development Kit):軟件開發(fā)工具包政鼠,在Java中用于描述1998年~2006年之間的JDK
DAO(Data Access Object):數(shù)據(jù)訪問接口风瘦,數(shù)據(jù)訪問,顧名思義就是與數(shù)據(jù)庫打交道
MVC(Model View Controller):模型(model)-視圖(view)-控制器(controller)的縮寫公般,一種軟件設(shè)計(jì)典范万搔,用于組織代碼用一種業(yè)務(wù)邏輯和數(shù)據(jù)顯示分離的方法
7.設(shè)置JAVA_HOME:
一是為了方便引用,比如官帘,JDK安裝在C:\jdk1.6.0目錄里瞬雹,則設(shè)置JAVA_HOME為該目錄路徑,那么以后要使用這個(gè)路徑的時(shí)候,只需輸入%JAVA_HOME%即可,避免每次引用都輸入很長的路徑串;
二則是歸一原則,當(dāng)JDK路徑改變的時(shí)候,僅需更改JAVA_HOME的變量值即可,否則,就要更改任何用絕對(duì)路徑引用JDK目錄的文檔,要是萬一沒有改全,某個(gè)程序找不到JDK,后果是可想而知的----系統(tǒng)崩潰!
三則是第三方軟件會(huì)引用約定好的JAVA_HOME變量,不然,你不能正常使用該軟件。
在系統(tǒng)環(huán)境變量那一欄中點(diǎn)->新建JAVA_HOME(JAVA_HOME指向的是JDK的安裝路徑)
path變量
path變量使得我們能夠在系統(tǒng)中的任何地方運(yùn)行java應(yīng)用程序遏佣,比如javac挖炬、java、javah等等,這就要找到我們安裝JDK的目錄状婶,
假設(shè)我們的JDK安裝在C:\jdk1.6.0目錄下,那么在C:\jdk1.6.0\bin目錄下就是我們常用的java應(yīng)用程序,我們就需要把C:\jdk1.6.0\bin這個(gè)目錄加到path環(huán)境變量里面意敛。
classpath變量
classpath環(huán)境變量,是當(dāng)我們?cè)陂_發(fā)java程序時(shí)需要引用別人寫好的類時(shí)膛虫,要讓java解釋器知道到哪里去找這個(gè)類草姻。通常,sun為我們提供了一些額外的豐富的類包稍刀,一個(gè)是dt.jar撩独,一個(gè)是tools.jar,這兩個(gè)jar包都位于C:\jdk1.6.0\lib目錄下账月,所以通常我們都會(huì)把這兩個(gè)jar包加到我們的classpath環(huán)境變量中set classpath=.;C:\jdk1.6.0\lib\tools.jar;C:\jdk1.6.0\lib\dt.jar综膀。
注意在完成配置環(huán)境變量后測(cè)試JDK是否安裝成功時(shí)鍵入命令:java-version
8.
對(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í)例變量的值決定觉痛。
9.
類名:對(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í)行岩睁。
10.
習(xí)慣命名規(guī)則:
(1)標(biāo)識(shí)符要符合語義信息钞脂。
(2)包名所有字母小寫。
(3)類名每個(gè)單詞首字母大寫捕儒,其它小寫冰啃,如:TarenaStudent。
(4)變量和方法:第一個(gè)單詞小寫刘莹,從第二個(gè)單詞開始首字母大寫阎毅,如:tarenaStudent。
(5)常量:所有字母大寫点弯,每個(gè)單詞之間用_連接
11.
強(qiáng)制類型轉(zhuǎn)換
(int)12.0
12.
true和false之間不能比較大小
判斷是否相等的==和扇调!=的優(yōu)先級(jí)比其他的低,而連續(xù)的關(guān)系運(yùn)算是從左到右進(jìn)行的
6 > 5 > 4不可以這樣比較6>5是true true不能和int進(jìn)行比較
a == b == 6不可以這樣比較a == b truetrue不能和int進(jìn)行比較
a == b > false不可以這樣比較a == b truetrue和false之間不能比較
13.
雙精度浮點(diǎn)數(shù)計(jì)算有誤差
double 1.0!=double 0.1+0.1+0.1+0.1.......
14.
兩個(gè)浮點(diǎn)數(shù)進(jìn)行比較蒲拉,比較他們之間的差距
Math.abs(fl -f2 )<0.0001
15.
行斷點(diǎn) 程序運(yùn)行到時(shí)會(huì)停下來
Line BreakPoint
寫程序時(shí)注意斷點(diǎn)調(diào)試
16.
else總是和最近的if匹配
17.
在if或else后面總是用{}肃拜,即使是只有一條語句的時(shí)候
18.
switch-case:
switch(){
case常量:
break;
default:
語句;
}
19.
驗(yàn)證:
測(cè)試程序常使用邊界數(shù)據(jù),如有效范圍兩端的數(shù)據(jù)雌团、特殊的倍數(shù)等
個(gè)位數(shù)燃领;10;0锦援; 負(fù)數(shù)猛蔽;
20.
查看javac具體做了什么
javacdong.java -verbose
21.
注釋:選中ctrl +7或者ctrl + /添加注釋再次按ctrl +7取消注釋
單行注釋://養(yǎng)成開發(fā)時(shí)為代碼添加適當(dāng)?shù)淖⑨尩暮昧?xí)慣
多行注釋/*
*/
22.
// TODO Auto-generated method stub在代碼指定位置添加//TODO任務(wù)提示 ,點(diǎn)擊小藍(lán)方框跳到相應(yīng)位置
23.
alt + /自動(dòng)補(bǔ)全代碼
alt + /是基于代碼模板來完成自動(dòng)生成代碼的工作的,可查看代碼模板
window--preferences --java --editor --templates
可以自己創(chuàng)建新的代碼模板
我的在代碼編輯器中輸入sys曼库,alt +/自動(dòng)生成代碼模塊中內(nèi)容
自己的一個(gè)代碼模板輸入sysSystem.out.println("");
24.
查看JDK源碼右擊一個(gè)關(guān)鍵詞open declaration
或者是壓住Ctrl鍵單擊相應(yīng)標(biāo)識(shí)符
25.
在程序中添加適當(dāng)?shù)目瞻追?/p>
使程序更加可讀
空行区岗,空格和tab成為“空白符”(white-space-characters)
程序中的空行,一般用于給功能代碼分組毁枯,養(yǎng)成這樣一個(gè)好習(xí)慣
另外一個(gè)單獨(dú)的語句可以被分為多行慈缔,可以多敲回車避免語句過長難于閱讀
26.
減輕java程序員人工編寫文檔的工作量,實(shí)現(xiàn)從代碼中自動(dòng)地抽取注釋种玛,java中定義了一種標(biāo)準(zhǔn)的注釋方式藐鹤,內(nèi)置了一些標(biāo)準(zhǔn)的以“@”開頭的關(guān)鍵字:
/**
*@authordongjingwei
*@version 1.0
*/
27.
public static void main(String args[])
void表明main方法不返回任何結(jié)果
28.
包package
*相關(guān)的類被放在一起,稱為包
*jak預(yù)置的所有的包構(gòu)成“java標(biāo)準(zhǔn)類庫”或者“java應(yīng)用程序編程接口”
核心包c(diǎn)ore packages :以“java”開頭赂韵,由jdk所直接提供
擴(kuò)展包extension packages以 “javax”開頭
29.方法名開頭字母小寫
30.靜態(tài)方法用“類名.方法名(參數(shù)列表)”的形式調(diào)用
無須創(chuàng)建對(duì)象即可使用的方法是靜態(tài)方法
31.system.exit(0);
調(diào)用靜態(tài)類system的靜態(tài)方法exit結(jié)束程序
參數(shù)0表示程序順利結(jié)束娱节,非0表示有錯(cuò)誤發(fā)生
32.
1.Java修飾符
像其他語言一樣,Java可以使用修飾符來修飾類中方法和屬性祭示。主要有兩類修飾符:
可訪問修飾符: default, public , protected, private
不可訪問修飾符: final, abstract, strictfp
2.Java枚舉
枚舉限制變量只能是預(yù)先設(shè)定好的值
3.------------------------------------------------
面向?qū)ο笳Z言有3個(gè)重要特性:封裝肄满、繼承、多態(tài)
面向?qū)ο笠粋€(gè)重要的思想就是通過抽象得到類质涛,將某些數(shù)據(jù)以及針對(duì)這些數(shù)據(jù)的操作封裝進(jìn)一個(gè)類中
抽象:數(shù)據(jù)屬性
數(shù)據(jù)的操作行為
類是從具體的實(shí)例中抽取共有屬性(行為)和行為(操作)
關(guān)于類稠歉、對(duì)象、方法抽象
抽象的關(guān)鍵點(diǎn)有兩點(diǎn):一是數(shù)據(jù)蹂窖,二是數(shù)據(jù)上的操作
對(duì)象通過“.”運(yùn)算符操作自己的變量和調(diào)用方法轧抗。
對(duì)象.變量;對(duì)象.方法
class類名{//類名大寫
類體
類體包括聲明變量:刻畫屬性類體中聲明的變量是域變量或成員變量//變量第一個(gè)字母小寫
包括定義方法:刻畫行為
方法聲明部分:
方法返回類型方法名(){
方法體在方法體中聲明的變量和方法中的參數(shù)是局部變量
}
}
Circle circle;//聲明對(duì)象瞬测;
circle = new Circle();//創(chuàng)建對(duì)象横媚;
--------------------------------------------------------------------------
聲明數(shù)組
數(shù)組的元素類型數(shù)組名[][]或者數(shù)組的元素類型[][]數(shù)組名
為數(shù)組分配元素
數(shù)組名= new數(shù)組元素類型[數(shù)組元素個(gè)數(shù)]
另外聲明數(shù)組和創(chuàng)建數(shù)組可以一起完成
float boy[] = new float[4]
--------------------------
int a[] = {1,2,3,4}
System.out.println("數(shù)組a的引用=" + a)
而對(duì)于char型數(shù)組,輸出char型數(shù)組的引用月趟,必須讓數(shù)組a與字符串做并置運(yùn)算
System.out.println(""+ a);
------------------------------------------------------------------
源文件聲明規(guī)則
一個(gè)源文件中只能有一個(gè)public類
一個(gè)源文件可以有多個(gè)非public類
源文件的名稱應(yīng)該和public類的類名保持一致灯蝴。例如:源文件中public類的類名是Employee,那么源文件應(yīng)該命名為Employee.java孝宗。
如果一個(gè)類定義在某個(gè)包中穷躁,那么package語句應(yīng)該在源文件的首行。
如果源文件包含import語句因妇,那么應(yīng)該放在package語句和類定義之間问潭。如果沒有package語句,那么import語句應(yīng)該在源文件中最前面婚被。
import語句和package語句對(duì)源文件中定義的所有類都有效狡忙。在同一源文件中,不能給不同的類不同的包聲明址芯。
-------------------------------------
java常量
常量就是一個(gè)固定值灾茁。在java中用final標(biāo)志窜觉,聲明方式和變量類似;
final double PI =3.14159
-----------------------------------------------
1.默認(rèn)情況下Eclipse字符集為GBK北专,但我們很多項(xiàng)目采用的是UTF-8
在菜單欄選擇Window -> Preferences -> General ->Workspace -> Text file encoding
2.Eclipse可以同時(shí)開啟多個(gè)窗口禀挫,在 菜單欄選擇:Window ->
New Window來開啟多窗口。
多個(gè)窗口的切換你可以使用Alt + Tab來回切
3.工作空間中查找----快捷鍵:Ctrl + H
4.Open Type in Hierarchy菜單允許用戶在Type Hierarchy視圖中查看類的繼承層次拓颓。
5.如果你想設(shè)置書簽语婴,你只需要在垂直標(biāo)尺上右擊鼠標(biāo)并選擇能"Add
Bookmark"即可。
6.通過Eclipse官方市場(http://marketplace.eclipse.org/)找到并下載我們需要的插件驶睦。
7.Eclipse快捷鍵列表可通過快捷鍵Ctrl + Shift + L打開
8.通過點(diǎn)擊window->preferences->general->keys(或直接搜索keys)腻格,進(jìn)入快捷鍵管理界面手動(dòng)設(shè)置快捷鍵
10.瀏覽器可以通過點(diǎn)擊Window菜單并選擇Show View > Other,在彈出來的對(duì)話框的搜索欄中輸入"browser"啥繁。