零基礎(chǔ)如何學(xué)習(xí)java及java語言的知識(shí)要點(diǎn)芹扭!

對(duì)于想要學(xué)習(xí)java的編程初學(xué)者剛學(xué)習(xí)java的時(shí)候芯肤,不懂得該學(xué)習(xí)那些必要的java基礎(chǔ)知識(shí)问拘。下面是一些java基礎(chǔ)的知識(shí)要點(diǎn)遍略。對(duì)于初學(xué)者零基礎(chǔ)有很大的幫助惧所。

一.首先要了解java的四個(gè)相關(guān)技術(shù):java程序設(shè)計(jì)語言、java class文件格式绪杏、java應(yīng)用編程接口下愈、java虛擬機(jī)。理解它們之間的區(qū)別與聯(lián)系蕾久,分別有哪些應(yīng)用势似。

Java編程語言,即語法僧著。

Java文件格式履因,即各種文件夾、文件的后綴霹抛。

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

Java應(yīng)用程序接口(Java API)杯拐。

二.java是分兩部分的:一個(gè)是編譯霞篡,一個(gè)是運(yùn)行。

javac:負(fù)責(zé)的是編譯的部分端逼,當(dāng)執(zhí)行javac時(shí)朗兵,會(huì)啟動(dòng)java的編譯器程序。對(duì)指定擴(kuò)展名的.java文件進(jìn)行編譯顶滩。 生成了jvm可以識(shí)別的字節(jié)碼文件余掖。也就是class文件,也就是java的運(yùn)行程序礁鲁。

java:負(fù)責(zé)運(yùn)行的部分.會(huì)啟動(dòng)jvm.加載運(yùn)行時(shí)所需的類庫(kù),并對(duì)class文件進(jìn)行執(zhí)行.一個(gè)文件要被執(zhí)行,必須要有一個(gè)執(zhí)行的起始點(diǎn),這個(gè)起始點(diǎn)就是main函數(shù).

三.初學(xué)者還需明白JAVA的三個(gè)技術(shù)平臺(tái)的關(guān)系:Java分為三個(gè)體系盐欺,分別為

1.企業(yè)版(Java EE) Java EE是一種利用平臺(tái)來簡(jiǎn)化企業(yè)解決方案的開發(fā)、部署和管理相關(guān)的復(fù)雜問題的體系結(jié)構(gòu)仅醇。

2.標(biāo)準(zhǔn)版(Java SE) Java SE 是Java平臺(tái)標(biāo)準(zhǔn)版的簡(jiǎn)稱(Java Platform, Standard Edition) (also known as Java 2 Platform) 冗美,用于開發(fā)和部署桌面、服務(wù)器以及嵌入設(shè)備和實(shí)時(shí)環(huán)境中的Java應(yīng)用程序析二。JavaSE包括用于開發(fā)Java Web服務(wù)的類庫(kù)粉洼,同時(shí),Java SE為Java EE提供了基礎(chǔ)叶摄。

3.Micro版(Java ME) Java ME是Java微版的簡(jiǎn)稱(Java Platform,Micro Edition)属韧,是一個(gè)技術(shù)和規(guī)范的集合,它為移動(dòng)設(shè)備(包括消費(fèi)類產(chǎn)品蛤吓、嵌入式設(shè)備宵喂、高級(jí)移動(dòng)設(shè)備等)提供了基于Java環(huán)境的開發(fā)與應(yīng)用平臺(tái)。

四.掌握J(rèn)AVA代碼的基本格式

1柱衔、Java注釋盡可能全面

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

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

多處使用的相同值的變量應(yīng)該盡量歸納為一個(gè)常量,方便日后的維護(hù)艾岂。

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

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

for(inti=0;i

System.out.println(i)脆炎;

}

可以修改為:

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

System.out.println(i)氓辣;

}

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

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

5、ArrayList和LinkedList的選擇

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

6暇昂、String,StringBuffer和StringBuilder

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

Stringa= “a”;

String b= “b”;

a=a+b;

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

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

在代碼中赏寇,如果可以使用基本數(shù)據(jù)類型來做局部變量類型的話盡量使用基本數(shù)據(jù)類型,因?yàn)榛绢愋偷淖兞渴谴娣旁跅V械募廴希b類的變量是在堆中嗅定,棧的操作速度比堆快很多。

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

這樣做可以幫助jvm更快的進(jìn)行內(nèi)存回收渠退。當(dāng)然很多人其實(shí)對(duì)這種做法并不感冒忙迁。

9、在finally塊中對(duì)資源進(jìn)行釋放

典型的場(chǎng)景是使用IO流的時(shí)候碎乃,不論是否出現(xiàn)異常最后都應(yīng)該在finally中對(duì)流進(jìn)行關(guān)閉姊扔。

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

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

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末梗掰,一起剝皮案震驚了整個(gè)濱河市嵌言,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌及穗,老刑警劉巖摧茴,帶你破解...
    沈念sama閱讀 216,324評(píng)論 6 498
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異埂陆,居然都是意外死亡苛白,警方通過查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 92,356評(píng)論 3 392
  • 文/潘曉璐 我一進(jìn)店門猜惋,熙熙樓的掌柜王于貴愁眉苦臉地迎上來丸氛,“玉大人,你說我怎么就攤上這事著摔』捍埽” “怎么了?”我有些...
    開封第一講書人閱讀 162,328評(píng)論 0 353
  • 文/不壞的土叔 我叫張陵谍咆,是天一觀的道長(zhǎng)禾锤。 經(jīng)常有香客問我,道長(zhǎng)摹察,這世上最難降的妖魔是什么恩掷? 我笑而不...
    開封第一講書人閱讀 58,147評(píng)論 1 292
  • 正文 為了忘掉前任,我火速辦了婚禮供嚎,結(jié)果婚禮上黄娘,老公的妹妹穿的比我還像新娘。我一直安慰自己克滴,他們只是感情好逼争,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,160評(píng)論 6 388
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著劝赔,像睡著了一般誓焦。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上着帽,一...
    開封第一講書人閱讀 51,115評(píng)論 1 296
  • 那天杂伟,我揣著相機(jī)與錄音移层,去河邊找鬼。 笑死赫粥,一個(gè)胖子當(dāng)著我的面吹牛观话,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播傅是,決...
    沈念sama閱讀 40,025評(píng)論 3 417
  • 文/蒼蘭香墨 我猛地睜開眼匪燕,長(zhǎng)吁一口氣:“原來是場(chǎng)噩夢(mèng)啊……” “哼蕾羊!你這毒婦竟也來了喧笔?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 38,867評(píng)論 0 274
  • 序言:老撾萬榮一對(duì)情侶失蹤龟再,失蹤者是張志新(化名)和其女友劉穎书闸,沒想到半個(gè)月后,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體利凑,經(jīng)...
    沈念sama閱讀 45,307評(píng)論 1 310
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡浆劲,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,528評(píng)論 2 332
  • 正文 我和宋清朗相戀三年,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了哀澈。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片牌借。...
    茶點(diǎn)故事閱讀 39,688評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡,死狀恐怖割按,靈堂內(nèi)的尸體忽然破棺而出膨报,到底是詐尸還是另有隱情,我是刑警寧澤适荣,帶...
    沈念sama閱讀 35,409評(píng)論 5 343
  • 正文 年R本政府宣布现柠,位于F島的核電站,受9級(jí)特大地震影響弛矛,放射性物質(zhì)發(fā)生泄漏够吩。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,001評(píng)論 3 325
  • 文/蒙蒙 一丈氓、第九天 我趴在偏房一處隱蔽的房頂上張望周循。 院中可真熱鬧,春花似錦万俗、人聲如沸湾笛。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,657評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)迄本。三九已至,卻和暖如春课竣,著一層夾襖步出監(jiān)牢的瞬間嘉赎,已是汗流浹背置媳。 一陣腳步聲響...
    開封第一講書人閱讀 32,811評(píng)論 1 268
  • 我被黑心中介騙來泰國(guó)打工, 沒想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留公条,地道東北人拇囊。 一個(gè)月前我還...
    沈念sama閱讀 47,685評(píng)論 2 368
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像靶橱,于是被迫代替她去往敵國(guó)和親寥袭。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,573評(píng)論 2 353

推薦閱讀更多精彩內(nèi)容

  • 作為一個(gè)程序員,在找工作的過程中,都會(huì)遇到筆試,而很多筆試?yán)锩娑及╦ava,尤其是作為一個(gè)Android開發(fā)工程...
    左神話閱讀 7,996評(píng)論 15 295
  • 1. Java基礎(chǔ)部分 基礎(chǔ)部分的順序:基本語法关霸,類相關(guān)的語法传黄,內(nèi)部類的語法,繼承相關(guān)的語法队寇,異常的語法膘掰,線程的語...
    子非魚_t_閱讀 31,622評(píng)論 18 399
  • (一)Java部分 1、列舉出JAVA中6個(gè)比較常用的包【天威誠(chéng)信面試題】 【參考答案】 java.lang;ja...
    獨(dú)云閱讀 7,100評(píng)論 0 62
  • "呼蘭河這小城里邊住著我的祖父佳遣。 我生的時(shí)候识埋,祖父已經(jīng)六十多歲了,我長(zhǎng)到四五歲, 祖父就快七十了零渐≈现郏” “我家的院子...
    林爔櫟閱讀 1,223評(píng)論 0 11
  • 生而為人 前段時(shí)間一直聽說釜山行這部電影.很好看.可是是喪尸片。所以選擇在家里.在一個(gè)陽(yáng)光燦爛的下...
    彭裕orange閱讀 264評(píng)論 0 0