版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)
文檔簡介
1、 Java學習總結(jié)JAVA一直是很多人喜愛的一種編程語言,學習JAVA需要多看SUN公司提供我們的資料信息,了解常用類的屬性和方法。我們在用常用類的時候,經(jīng)常會把類里面的方法和自定義的方法搞混。記得有一位老師說過“學習要抱有一種鉆研的態(tài)度”。我對這句話的理解是當我們學習到一個新的知識點的時候,需要不斷理解和消化。這可能是一個長期的過程,不能抱有一種急于求成的態(tài)度。以下內(nèi)容是這個學期以來我總結(jié)的java基礎(chǔ)知識點。一、SDK和JDK的區(qū)別 SDK是軟件開發(fā)工具包,JDK是SK的一種,其實它是JAVA SDK。JDK在早期的版本中也是叫SDK,在1.2版本以后才叫JDK。二、J2EE、J2SE、J
2、2ME區(qū)別J2EE:JAVA2平臺的企業(yè)版,主要應用于WEB和大型企業(yè)的開發(fā)。J2SE:JAVA2平臺的標準版,學習和一般的開發(fā)。它包含于J2EE。J2ME:JAVA2平臺的微縮版,主要應用于電子設(shè)備(手機)方面,它包含有J2SE的核心部分之外,還有一個專業(yè)的類。三、JVM的運行機制類加載類校驗類執(zhí)行 四、JAVA、JAVAC、JAVADOC的用法JAVA:JAVA解釋器用于執(zhí)行JAVA字節(jié)碼。它所執(zhí)行的是一個類并不是一個文件,所以后面類的名字區(qū)分大小寫。JAVAC:JAVAC解釋器用于將JAVA源代碼編譯字節(jié)碼。JAVADOC:JAVADOC用于從程序源代碼中抽取類、方法等注釋形成一個和源代
3、碼配套的API文檔。它執(zhí)行的也是一個以.JAVA為擴展名的源文件,所以后面的文件名不區(qū)分大小寫。五、JAVA標識符1、標識符由數(shù)字、字母下劃線“_”或“$”符號組成。2、標識符必須以字母、下劃線“_”或“$”符號開頭。3、不能使用JAVA關(guān)鍵字。4、字母區(qū)分大小寫六、數(shù)據(jù)類型1 原始數(shù)據(jù)類型2 數(shù)值類型l BYTEl 整型:SHORT、INT、INTl 浮點:FLOAT、DOUBLE2 BOOLEAN類型1 引用數(shù)據(jù)類型2 數(shù)組2 類2 接口七、變量變量可分為類變量、局部變量、方法變量。類變量在定義時就有默認值,數(shù)值類型的默認為0,CAHR的默認a,BOOLEAN默認FALSE。方法變量中沒有
4、默認值,需要賦值才能使用。八、類和對象的區(qū)別類是對象的模板,對象是類的特例類是抽象的,客觀上并不存在的對象是具體的,是客觀存的九、類的構(gòu)造方法構(gòu)造方法具有和類相同的名字,它是一個沒有返回值的方法。有隱式構(gòu)造方法和自定義構(gòu)造方法兩種。JVM在沒有自定義造構(gòu)方法時提供一個沒有參數(shù)也沒有方法主體的默認構(gòu)造方法。但是如果有自定義的構(gòu)造方法時,JVM不再提供默認的構(gòu)造方法。如果在類的實例化是需要用默認構(gòu)造方法時,必須顯示的定義。十、方法的重載可以對構(gòu)造方法或者自定義的方法進行重載,對方法的重載必須滿足以下三個條件:1、參數(shù)個數(shù)不同2、參數(shù)類型不同3、參數(shù)順序不同十一、面向?qū)ο蟮奶匦?、封裝2、繼承3、多
5、態(tài)十二、繼承的特性繼承允許重用現(xiàn)有的類來構(gòu)造新類的機制。在繼承中具有如下特性:1、默認繼承Object2、單繼承,只能有一個父類3、子類繼承父類除private以外的全部成員和方法。十三、方法的重寫構(gòu)成方法重寫的條件:1、兩個繼承關(guān)系的類里2、方法名、返回值、參數(shù)必須一致。十四、靜態(tài)(變量、方法、塊)靜態(tài)類型的變量或方法都是屬于類的,并不是屬某個具體對象的。所以也稱類變量和類方 法,所有對象共享一份類變量。定義類變量或類方法的關(guān)鍵字是static。靜態(tài)塊是在類第一次 加載時執(zhí)行。它的作用是初始化類變量成員。十五、抽象類抽象類是具體抽象方法的、不可以實例化對象的類。構(gòu)成抽象類的條件:a) 具有一
6、個以上的抽象方法。b) 繼承一個抽象類,但沒有實現(xiàn)全部的抽象方法。c) 繼承一個接口,沒有實現(xiàn)全部的抽象方法。十六、異常Error:內(nèi)部錯誤,不期望用戶捕獲的一種錯誤。try語句:try句子里面主要是放置要監(jiān)控的程序句子catch:以合理的方式捕獲和處理異常,主有try語句出錯才會執(zhí)行。finally:釋放資源,不管try里面的語句是否出錯都要執(zhí)行。throw:手動引發(fā)異常throws:由方法引發(fā)的異常多層捕獲:異常子類一定要位于異常父類之前。最后一個catch塊要用Exception捕獲,以便捕獲到所有異常。執(zhí)行其中一條catch語句之后,其它的catch將被忽略。以上的內(nèi)容不包括JAVA界
7、面方面的知識,JAVA界面的開發(fā)需要用JBUILDER和一些專用的類,這些類在SUN公司幫助里都可以查到詳細的說明。總的來說,經(jīng)過以上幾點的理解會更加深刻了,對以前看書感到迷惑的知識點現(xiàn)在可以幫助消化吸收。java語言產(chǎn)生于C語言之后,是完全的面向?qū)ο蟮木幊陶Z言,充分吸取了C語言的優(yōu)點,采用了程序員所熟悉的C和C語言的許多語法,同時又去掉了C語言中指針、內(nèi)存申請和釋放等影響程序健壯性的部分,可以說java語言是站在C語言這個"巨人的肩膀上"前進的。java采用的是相對簡單的面向?qū)ο蠹夹g(shù),去掉了運算符重載、多繼承的復雜概念,而采用了單一繼承、類強制轉(zhuǎn)換、多線程、引用(非指針)
8、等方式。在java程序中不能采用地址計算的方法通過指針訪問內(nèi)存單元,大大減少了錯誤發(fā)生的可能性;而且java的數(shù)組并非用指針實現(xiàn),這樣就可以在檢查中避免數(shù)組越界的發(fā)生。無用內(nèi)存自動回收機制也增加了java的魯棒性。 JAVA執(zhí)行過程 : 1.java程序的編輯可以使用任何一種文本編輯器,例如UltraEdit、Notepad、Wordpad甚至word,然后只要把編輯好的文件存成.java文件。當然也可以用一些集成開發(fā)環(huán)境,例如Borland公司的JBuilder,IBM公司的Visualage for Java,此外還有cafe、kawa等其它集成開發(fā)環(huán)境。下面兩幅圖分別
9、是用UltraEdit和JBuilder編輯Property.java文件的情況。2.Sun公司為全世界的java程序員提供了一個免費的java程序開發(fā)包(Java Develop Kit,簡稱JDK),其中包括了java編譯器命令"javac",以及java執(zhí)行命令"java",還有幫助文檔生成器命令"javadoc"等等。所有這些命令都可以在命令行下運行,例如我們要編譯上述java文件Property.java,如果是在windows中進行開發(fā),就可以在"命令提示符"下進行編譯,在命令行中敲入"jav
10、ac Property.java" 3.當編譯結(jié)束以后,在java源文件中的每一個類都會生成相應的 .class 文件,例如上圖中就會生成一個Property.class文件,而java程序在執(zhí)行時調(diào)用的是.class 文件。Java application的執(zhí)行是在命令行下進行的,如果是在windows系統(tǒng)中,就可以"命令提示符"下敲入"java Propery"進行執(zhí)行,該"java"命令會啟動java虛擬機,并讀入Property.class文件進行執(zhí)行。J2SE的知識和技巧1. 只有創(chuàng)建了對象,它才能分配
11、到內(nèi)存,方法也才能用。作用是分配內(nèi)存。2. 方法equals(),比較對象的內(nèi)容而不是reference.3. 對于前置遞增和前置遞減,(也就是+a和a),操作過程是會先計算再返回。4. 對于后置遞增和后置遞減,(也就是a+和a),操作步驟是先返回再計算。5. 比較兩個對象的實際內(nèi)容,使用每一個類都有的equals()方法。6. 如果你創(chuàng)建了自己的類,再使用equals()方法的缺省行為是比較reference.所以,在新類里覆寫(override)equals()方法。7. 將float或double轉(zhuǎn)換成整數(shù)的時候,它總是將其后面的小數(shù)截去。8. Math.random()會生成0.0,用
12、數(shù)學術(shù)語,它的值域是0,1)(方括號表示包括,而括號表示“不包括”)9. 如果你寫了一個沒有構(gòu)造函數(shù)的類,那么編譯器會自動為你創(chuàng)建一個默認的構(gòu)造函數(shù)。10. 只要定義了構(gòu)造函數(shù)(不管帶不帶參數(shù)),編譯器就不會再自動合成默認的構(gòu)造函數(shù)了。11. 變量的初始化會先于任何方法,甚至是構(gòu)造函數(shù)的調(diào)用。12. 編譯單元里只能有一個public類。沒有public修飾,它是package權(quán)限了,只能用于package內(nèi)部。13. 取得當前工作目錄,是文件系統(tǒng)中的java命令被調(diào)用的位置String curDir = System.getProperty("user.dir");14.
13、static成員只會在需要的時候初始化。第一次訪問static成員的時候被初始化。15. 每一個編譯單元(文件)只能有一個public類,只能一個公開的接口。根據(jù)需要文件里添加任意多個提供輔助功能的package權(quán)限的類。兩個以上public類,編譯器會報錯。Java語言學習的要點1. 學習的目的是為了將來進行應用程序的開發(fā),而不是進行語言理論研究2. 將來的應用開發(fā)是在成熟的平臺上展開,而不是自己從底層開發(fā)平臺一、掌握靜態(tài)方法和屬性靜態(tài)方法和屬性用于描述某一類對象群體的特征,而不是單個對象的特征。Java中大量應用了靜態(tài)方法和屬性,這是一個通常的技巧。但是這種技巧在很多語言中不被頻繁地使用。
14、理解靜態(tài)方法和屬性對于理解類與對象的關(guān)系是十分有幫助的,在大量的Java規(guī)范中,靜態(tài)方法和屬性被頻繁使用。因此學習者應該理解靜態(tài)方法和屬性。Java在方法和屬性的調(diào)用上是一致的,區(qū)別只表現(xiàn)在聲明的時候,這和c+是不同的。二、重視接口在面向?qū)ο笤缙诘膽弥写罅渴褂昧祟惱^承。隨著軟件工程理論的不斷發(fā)展,人們開始意識到了繼承的眾多缺點,開始努力用聚合代替繼承。軟件工程解決擴展性的重要原則就是抽象描述,直接使用的工具就是接口。接口近年來逐漸成為Java編程方法的核心。另一方面,就應用而言,大部分開發(fā)是建立在規(guī)范基礎(chǔ)之上的,不需要自己建立復雜的繼承關(guān)系和龐大的類。因此讀懂規(guī)范和用好規(guī)范已經(jīng)成為應用程序開
15、發(fā)人員的首要任務,Java各項規(guī)范的主要描述手段就是接口。三、學好集合框架Java描述復雜數(shù)據(jù)結(jié)構(gòu)的主要方式是集合框架。Java沒有指針,而是通過強大的集合框架描述數(shù)組、對象數(shù)組等復雜的數(shù)據(jù)結(jié)構(gòu)。學好這些數(shù)據(jù)結(jié)構(gòu)的描述方法對于應用程序編寫,特別是涉及到服務器方、3層結(jié)構(gòu)編程至關(guān)重要。程序員在這個時候不能再用諸如數(shù)據(jù)庫結(jié)果集之類的結(jié)構(gòu)描述數(shù)據(jù)了。由于很多語言沒有這么強大的集合框架體系,很多初學者不知所措,更不知道拿來做什么用,因此應該引起足夠的重視。四、例外捕捉Java對例外捕捉的強調(diào)是空前的,它強迫程序員用顯著的與邏輯方法完全不同的方式描述例外捕捉,對于程序描述的完整性和嚴謹性有很大的意義。c
16、+也有類似的機制,但是我們看到很多c+程序員并不習慣使用這些機制。Java的初學者應該充分學習好這種例外捕捉機制,養(yǎng)成良好的編程習慣。五、多線程需要理解機理很多Java程序員熱衷于多線程程序編寫,認為是對邏輯能力的挑戰(zhàn)。其實在大量應用中根本就不需要編寫多線程程序,或者說大多數(shù)編寫應用程序的程序員不會去寫多線程程序。這是因為多線程機制都內(nèi)置到基礎(chǔ)平臺當中了。程序員應該了解的是多線程原理和多線程安全,這對于今后準確地把握程序是至關(guān)重要的。例如JSP中編寫到不同的位置對于多個用戶環(huán)境的安全影響完全不同,又如著名的Super Servlet是每一個訪問作為一個進程,但是每一個頁面是一個線程,和Serv
17、let正好相反,對程序的性能和安全的影響有天壤之別。六、了解java網(wǎng)絡編程Java號稱是最強的網(wǎng)絡編程語言,但是大多數(shù)應用程序開發(fā)人員是從來不會自己開發(fā)什么底層的網(wǎng)絡程序的。需要做只是了解原理就夠了。網(wǎng)絡機制的實現(xiàn)是靠平臺實現(xiàn)的,除非自己開發(fā)平臺,否則是不需要知道socket怎么實現(xiàn),怎么監(jiān)聽訪問的。因此在這方面花太多的功夫就偏離了“將來的應用開發(fā)是在成熟的平臺上展開,而不是自己從底層開發(fā)平臺”這一假設(shè)1.欲速則不達,初學者請不要被新技術(shù)迷惑,先把基礎(chǔ)學扎實。 JAVA2入門教材完全是適合初學者的,配合有視頻講解,大家可以免費索取,并不是它說了多少知識,多少api.它只說了更多的“基礎(chǔ)知識”
18、2.要扎扎實實,一步一個腳印的逐步學習,不要想著一步登天。給自己定一個學習流程,按照流程學習。不要看到大家都在學J2EE了,就去學J2EE發(fā)現(xiàn)大家又在討論JSP,又放下J2EE去學JSP.浮躁的人永遠學不到什么東西。3.多查API,它是Java編程的基本方法,也是編程過程中所不斷利用的資源。Java的學習過程不僅僅是基本語法的學習,更多的是去學習和掌握它所提供的API類庫。對于所接觸到的類,方法,都去仔細去閱讀文檔的說明,再用自己編寫的實例去此時一下。4.看再多的書是學不全腳本的,要多實踐 ,學習腳本最好的方法之一就是多練習; 不要只看不練,一定要把書上的例子親手敲到電腦上實踐,千萬不要照抄,更不要復制粘貼; 看得懂代碼,不代表會寫代碼。學編程語言不僅僅是從理論上的學習,更重要的是要利用這門語言為你的思想服務。理解這門語言是首要的,但是要達到心領(lǐng)神會、融會貫通就必須勤動手,多去時間
溫馨提示
- 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
- 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
- 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
- 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
- 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
- 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
- 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。
最新文檔
- 2025年度體育用品品牌代理銷售與市場拓展合同
- 2025年度綠色建筑設(shè)計與施工總承包合同范本-@-1
- 生產(chǎn)部門員工培訓與激勵策略探討
- 環(huán)保教育在生態(tài)旅游中的推廣與經(jīng)濟影響
- 電商數(shù)據(jù)分析在運營策略中的應用
- 生產(chǎn)現(xiàn)場5S管理推廣與應用
- 結(jié)婚典禮上的講話稿(集錦15篇)
- 2025年度大氣污染防治與供方責任協(xié)議正規(guī)范文本
- 2025年度旅游設(shè)施租賃經(jīng)營合同范本
- 2025年度住宅小區(qū)景觀設(shè)計與裝飾裝修工程施工合同
- 圣三國蜀漢傳攻略
- 2021屆高考英語887核心詞(打印、詞頻、出處、例句、背誦)
- 天津市鄉(xiāng)鎮(zhèn)衛(wèi)生院街道社區(qū)衛(wèi)生服務中心地址醫(yī)療機構(gòu)名單
- 公司機關(guān)管理類責任矩陣
- 山東省青島市各縣區(qū)鄉(xiāng)鎮(zhèn)行政村村莊村名居民村民委員會明細及行政區(qū)劃代碼
- 《鉆井液用磺甲基酚醛樹脂技術(shù)要求》
- 數(shù)學-九宮數(shù)獨100題(附答案)
- 中國農(nóng)業(yè)發(fā)展銀行XX支行 關(guān)于綜合評價自評情況的報告
- 2010年宣武區(qū)第六屆中小學生地理知識競賽題庫
- QC課題提高檢查井周邊壓實
- 應征公民體格檢查表(征兵)
評論
0/150
提交評論