java編程語言知識要點學習java基礎(chǔ)英語單詞表

Java是一種可以撰寫跨平臺應用軟件的面向?qū)ο蟮某绦蛟O(shè)計語言。Java 技術(shù)具有卓越的通用性、高效性、平臺移植性和安全性,廣泛應用于PC、數(shù)據(jù)中心、游戲控制臺、科學超級計算機、移動電話和互聯(lián)網(wǎng),同時擁有全球最大的開發(fā)者專業(yè)社群。

給你學習路線:html-css-js-jq-javase-數(shù)據(jù)庫-jsp-servlet-Struts2-hibernate-mybatis-spring4-springmvc-ssh-ssm

一、先明白了解Java的四個方面

初學者先弄清這些Java的基本概念也是必不可少的,死記硬背肯定是不行的,重在理解,理解它們之間的區(qū)別與聯(lián)系,分別有哪些應用。想想這些代碼中用到了哪些知識點。不要一味地照著書本敲代碼。而不去理解。

Java編程語言,即語法。

Java文件格式,即各種文件夾、文件的后綴。

Java虛擬機(JVM),即處理*.class文件的解釋器。

Java應用程序接口(Java API)。

要知道java是分兩部分的:一個是編譯,一個是運行。

javac:負責的是編譯的部分,當執(zhí)行javac時,會啟動java的編譯器程序。對指定擴展名的.java文件進行編譯。生成了jvm可以識別的字節(jié)碼文件。也就是class文件,也就是java的運行程序。

java:負責運行的部分.會啟動jvm.加載運行時所需的類庫,并對class文件進行執(zhí)行。一個文件要被執(zhí)行,必須要有一個執(zhí)行的起始點,這個起始點就是main函數(shù)。

二、掌握靜態(tài)方法和屬性

靜態(tài)方法和屬性用于描述某一類對象群體的特征,而不是單個對象的特征。Java中大量應用了靜態(tài)方法和屬性,這是一個通常的技巧。但是這種技巧在很多語言中不被頻繁地使用。理解靜態(tài)方法和屬性對于理解類與對象的關(guān)系是十分有幫助的,在大量的Java規(guī)范中,靜態(tài)方法和屬性被頻繁使用。因此學習者應該理解靜態(tài)方法和屬性。Java在方法和屬性的調(diào)用上是一致的,區(qū)別只表現(xiàn)在聲明的時候,這和c++是不同的。

小編推薦一個學Java的學習裙【 六五零,五五四,六零七 】,無論你是大牛還是小白,是想轉(zhuǎn)行還是想入行都可以來了解一起進步一起學習!裙內(nèi)有開發(fā)工具,很多干貨和技術(shù)資料分享!

三、AVA的三個技術(shù)平臺的關(guān)系

初學者還需明白JAVA的三個技術(shù)平臺的關(guān)系。

Java分為三個體系,分別為:

Java SE(J2SE,Java2 Platform Standard Edition,標準版)。

JavaEE(J2EE,Java 2 Platform, Enterprise Edition,企業(yè)版)。

Java ME(J2ME,Java 2 Platform Micro Edition,微型版)。

要知道java是分兩部分的:一個是編譯,一個是運行。

javac:負責的是編譯的部分,當執(zhí)行javac時,會啟動java的編譯器程序。對指定擴展名的.java文件進行編譯。 生成了jvm可以識別的字節(jié)碼文件。也就是class文件,也就是java的運行程序。

java:負責運行的部分.會啟動jvm.加載運行時所需的類庫,并對class文件進行執(zhí)行。一個文件要被執(zhí)行,必須要有一個執(zhí)行的起始點,這個起始點就是main函數(shù)。

四、掌握JAVA代碼的基本格式

1、Java注釋盡可能全面

對于方法的注釋應該包含詳細的入?yún)⒑徒Y(jié)果說明,有異常拋出的情況也要詳細敘述:類的注釋應該包含類的功能說明、作者和修改者。

2、多次使用的相同變量最好歸納成常量

多處使用的相同值的變量應該盡量歸納為一個常量,方便日后的維護。

3、盡量少的在循環(huán)中執(zhí)行方法調(diào)用

盡量在循環(huán)中少做一些可避免的方法調(diào)用,這樣可以節(jié)省方法棧的創(chuàng)建。例如:

for(int i=0;i

System.out.println(i);

}

可以修改為:

for(int i=0,size=list.size();i

System.out.println(i);

}

4、常量的定義可以放到接口中

在Java中,接口里只允許存在常量,因此把常量放到接口中聲明就可以省去public static final這幾個關(guān)鍵詞。

5、ArrayList和LinkedList的選擇

這個問題比較常見。通常程序員最好能夠?qū)ist的使用場景做出評估,然后根據(jù)特性作出選擇。ArrayList底層是使用數(shù)組實現(xiàn)的,因此隨機讀取數(shù)據(jù)會比LinkedList快很多,而LinkedList是使用鏈表實現(xiàn)的,新增和刪除數(shù)據(jù)的速度比ArrayList快不少。

6、String,StringBuffer和StringBuilder

這個問題也比較常見。在進行字符串拼接處理的時候,String通常會產(chǎn)生多個對象,而且將多個值緩存到常量池中。例如:

String a= “a”;

String b= “b”;

a=a+b;

這種情況下jvm會產(chǎn)生“a”,“b”,“ab”三個對象。而且字符串拼接的性能也很低。因此通常需要做字符串處理的時候盡量采用StringBuffer和StringBuilder來。

7、包裝類和基本類型的選擇

在代碼中,如果可以使用基本數(shù)據(jù)類型來做局部變量類型的話盡量使用基本數(shù)據(jù)類型,因為基本類型的變量是存放在棧中的,包裝類的變量是在堆中,棧的操作速度比堆快很多。

8、盡早的將不再使用的變量引用賦給null

這樣做可以幫助jvm更快的進行內(nèi)存回收。當然很多人其實對這種做法并不感冒。

9、在finally塊中對資源進行釋放

典型的場景是使用IO流的時候,不論是否出現(xiàn)異常最后都應該在finally中對流進行關(guān)閉。

10、在HashMap中使用一個Object作為key時要注意如何區(qū)分Object是否相同

在jdk的HashMap實現(xiàn)中,判斷兩個Object類型的key是否相同的標準是hashcode是否相同和equals方法的返回值。如果業(yè)務(wù)上需要對兩個數(shù)據(jù)相同的內(nèi)存對象當作不同的key存儲到hashmap中就要對hashcode和equals方法進行覆蓋。

Java描述復雜數(shù)據(jù)結(jié)構(gòu)的主要方式是集合框架。Java沒有指針,而是通過強大的集合框架描述數(shù)組、對象數(shù)組等復雜的數(shù)據(jù)結(jié)構(gòu)。學好這些數(shù)據(jù)結(jié)構(gòu)的描述方法對于應用程序編寫,特別是涉及到服務(wù)器方、3層結(jié)構(gòu)編程至關(guān)重要。程序員在這個時候不能再用諸如數(shù)據(jù)庫結(jié)果集之類的結(jié)構(gòu)描述數(shù)據(jù)了。

小編推薦一個學Java的學習裙【 六五零,五五四,六零七 】,無論你是大牛還是小白,是想轉(zhuǎn)行還是想入行都可以來了解一起進步一起學習!裙內(nèi)有開發(fā)工具,很多干貨和技術(shù)資料分享!

學習 l Java基礎(chǔ)英語單詞表

public/ 'p?blik / 公共的void/ v?id / 空的,沒有的main / mein / 主要的class / klɑ:s / 類system / 'sist?m / 系統(tǒng)out / aut / 外面,外出,輸出print / print / 打印static / 'st?tik / 靜態(tài)的string / stri? / 字符串double / 'd?bl / 雙的character / 'k?rikt? / 字符integer / '?nt?d?? / 整數(shù)name / neim / 姓名type / taip / 類型price / prais / 價格score / sk?: / 得分,分數(shù)money / 'm?ni / 金錢,錢before / bi'f?: / 在……之前,以前now / nau / 現(xiàn)在weight / weit / 重量 height / hait / 高度,海拔boolean / 'bu:li:?n / 布爾true / tru: / 真的,正確的false / f?:ls / 錯誤的,假的else / els / 否則case / keis / 情形default / di'f?:lt / 默認switch / swit? / 開關(guān),電閘break / breik / 打破,突變while / hwail / 當……的時候index / 'indeks / 索引count / kaunt / 計算,計數(shù)bug / b?ɡ / 計算機程序的漏洞debug / di:'b?ɡ/ 調(diào)試,糾錯do / du: / 做,實行l(wèi)oop / lu:p / 循環(huán)for / f?: / 對于,適合于continue / k?n'tinju / 繼續(xù)input / 'input / 輸入rate / reit / 比率,速度,等級,價格,費用answer / 'ɑ:ns? / 答案,回答return / ri't?:n / 返回object / '?bd?ikt / 物體,對象null / n?l / 空type / taip / 類型encapsulation / in,k?psju'lei??n / 包裝,封裝initial / i'ni??l / 最初的,初始的package / 'p?kid? / 包裹,包document / 'd?kjum?nt / 文檔import / 'imp?:t / 引入,輸入,重要display / dis'plei / 展覽,顯示,顯示器method / 'meθ?d / 方法version / 'v?:??n / 版本parameter / p?'r?mit? / 參數(shù)array / ?'rei / 數(shù)組length / le?θ / 長度index / 'indeks / 索引sort / s?:t / 排序exception / ik'sep??n / 異常

小編推薦一個學Java的學習裙【 六五零,五五四,六零七 】,無論你是大牛還是小白,是想轉(zhuǎn)行還是想入行都可以來了解一起進步一起學習!裙內(nèi)有開發(fā)工具,很多干貨和技術(shù)資料分享!

equal / 'i:kw?l / 相等的

upper / '?p? / 上面的,較高的lower / 'l?u? / 下面的,較低的,降下last / lɑ:st / 最后的,上一次,最近一次trim / trim / 整理final / 'fain?l / 最后的,最終的buffer / 'b?f? / 緩沖器ignore / iɡ'n?: / 不顧,不理,忽視(ignore case忽略大小寫)concatenate / k??'ne???n / 連接script / skript / 腳本Function / 'f??k??n / 函數(shù)Document / 'd?kjum?nt / 文檔Submit / s?b'mit / 提交alert / ?'l?:t / 警告對話框confirm / k?n'f?:m / 確認對話框Location / l?u'kei??n / 當前URL的信息display / dis'plei / 顯示none / n?n / 隱藏block / bl?k / 按塊顯示substring / 's?bstri? / 求了串readonly / ri:?'d?pt / 只讀Array / ?'rei / 數(shù)組sort / s?:t / 排序add / ?d / 添加join / d??in / 連接province / 'pr?vins / 省constructor / k?n'str?kt? / 構(gòu)造器overload / ??v?'l??d / 重載Encapsulation / in,k?psju'lei??n / (面向?qū)ο筇匦裕┓庋b,包裝position / p?'zi??n / 位置education / edju:'kei??n / 教育,培養(yǎng),訓練introduction /?ntr?'d?k??n / 介紹override / ?uv?'raid / 重寫extends 繼承super / 'sju:p? / 超級, 上等inheritance / ?n'her?t?ns / (而向?qū)ο筇匦裕├^承polymorphism / p?li'm?:fiz?m / (面向?qū)ο筇匦裕┒鄳B(tài)interface / 'int?feis / 接口detail / 'di:teil / 細節(jié),詳情printer / 'pr?nt? / 打印機constants 常量exception / ik'sep??n / 異常throw /θr?u / 投,擲,拋catch / k?t? / 捕捉,捕獲log / l?ɡ/ 日志error handling 錯誤處理Deploy / di'pl?i / 部署undeploy 解除部署collection / k?'lek??n / 集合key / ki: / 鍵,鑰匙value / 'v?lju / 值,價值contain / k?n'tein / 包含,容納stack / st?k / 堆棧queue / kju: / 隊列Connection / k?'nek??n / 連接ResultSet 結(jié)果集title / 'taitl / 標題creator / kri:'e?t? / 創(chuàng)建者,創(chuàng)作者cursor / 'k?:s? / 指針translation / tr?ns'lei??n / 翻譯comment / 'k?ment / 注釋compilation / k?mp?'le???n / 編輯import / 'imp?:t / 導入,引入scriptlet 小腳本declaration / dekl?'rei??n / 聲明expression / iks'pre??n / 表達式directive / d?'rekt?v / 指示post /p?ust/ 一種請求方式,與之對應的是get請求方式request / ri'kwest / 請求response / ri'sp?ns / 響應parameter / p?'r?mit? / 參數(shù)implicit objects 隱式對象channel / 't??nl / 頻道session / 'se??n / 會話application / ?pli'kei??n / 應用,應用程序,應用軟件include / in'klu:d / 包括,包含attribute / ?'tribju:t / 屬性,特征hyperlink 超鏈接Service / 's?:vis / 服務(wù)Content / 'k?ntent / 內(nèi)容,容量Attribute / ?'tribju:t / 屬性,特征Redirect / ri:d?'rekt / 重定向Dispatcher / dis'p?t?? / 轉(zhuǎn)發(fā),派遣Session / 'se??n / 會話Book / buk / 書,書籍Price / prais / 價格Serializable / si?ri?lai'zei??n / 連接的,序列Copyright / 'k?pirait / 版權(quán)Edition / i'di??n / 版本Publisher / 'p?bl??? / 出版者,發(fā)行者Set / set / 類似數(shù)學中的集合Tree / tri: / 樹Format / 'f?:m?t / 格式,版式Quantity / 'kw?ntiti / 量,數(shù)量Decimal / 'desim?l / 十進制的,小數(shù)的Validate / 'v?l?,de?t / 確認,驗證Invalidate / ?n'v?l?,de?t / 使無效View / vju: / 視圖Controller / k?n'tr??l? / 控制器

Cannot / k?'n?t / 不,不能

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時請結(jié)合常識與多方信息審慎甄別。
平臺聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點,簡書系信息發(fā)布平臺,僅提供信息存儲服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容