下面是范文網(wǎng)小編收集的如何開始學習java11篇,供大家參閱。
如何開始學習java1
1. 培養(yǎng)興趣
興趣是能夠讓你堅持下去的動力。如果只是把寫程序作為謀生的手段的話,你會活的很累,也太對不起自己了。多關(guān)心一些行業(yè)趣事,多想想蓋茨。不是提倡天天做白日夢,但人要是沒有了夢想,你覺得有味道嗎?可能像許多深圳本地農(nóng)民一樣,打打麻將,喝喝功夫茶,拜拜財神爺;每個月就有幾萬十幾萬甚至更多的進帳,憑空多出個“食利階層”。你認為,這樣有味道嗎?有空多到一些程序員論壇轉(zhuǎn)轉(zhuǎn),你會發(fā)現(xiàn),他們其實很樂觀幽默,時不時會冒出智慧的火花。
2 .選程序設(shè)計語言
男怕入錯行,女怕嫁錯郎。初學者選擇程序設(shè)計語言需要謹慎對待。軟件開發(fā)不僅僅是掌握一門編程語言了事,它還需要其他很多方面的背景知識。軟件開發(fā)也不僅僅局限于某幾個領(lǐng)域,而是已經(jīng)滲透到了各行各業(yè)幾乎每一個角落。
如果你對硬件比較感興趣,你可以學習C語言/匯編語言,進入硬件開發(fā)領(lǐng)域。如果你對電信的行業(yè)知識及網(wǎng)絡(luò)比較熟悉,你可以在C/C++等之上多花時間,以期進入電信軟件開發(fā)領(lǐng)域。如果你對操作系統(tǒng)比較熟悉,你可以學習C/Linux等等,為Linux內(nèi)核開發(fā)/驅(qū)動程序開發(fā)/嵌入式開發(fā)打基礎(chǔ)。如果你想介入到應(yīng)用范圍最廣泛的應(yīng)用軟件開發(fā)(包括電子商務(wù)電子政務(wù)系統(tǒng))的話,你可以選擇J2EE或.NET,甚至LAMP組合。每個領(lǐng)域要求的背景知識不一樣。做應(yīng)用軟件需要對數(shù)據(jù)庫等很熟悉。總之,你需要根據(jù)自己的特點來選擇合適你的編程語言。
1.3 .腳踏實地,快餐式的學習不可取
有一個小朋友,他很喜歡研究生物學,很想知道那些蝴蝶如何從蛹殼里出來,變成蝴蝶便會飛。有一次,他走到草原上面看見一個蛹,便取了回家,然后看著,過了幾天以后,這個蛹出了一條裂痕,看見里面的蝴蝶開始掙扎,想抓破蛹殼飛出來。這個過程達數(shù)小時之久,蝴蝶在蛹里面很辛苦地拼命掙扎,怎么也沒法子走出來。這個小孩看著看著不忍心,就想不如讓我?guī)蛶退?,便隨手拿起剪刀在蛹上剪開,使蝴蝶破蛹而出。但蝴蝶出來以后,因為翅膀不夠力,變得很臃腫,飛不起來。
這個故事給我們的啟示是:欲速則不達。
浮躁是現(xiàn)代人最普遍的心態(tài),能怪誰?也許是貧窮落后了這么多年的緣故,就像當年的大躍進一樣,都想大步跨入共產(chǎn)主義社會?,F(xiàn)在的軟件公司、客戶、政府、學校、培訓機構(gòu)等等到處彌漫著浮躁之氣。就拿筆者比較熟悉的深圳IT培訓行業(yè)來說吧,居然有的打廣告宣稱“參加培訓,100%就業(yè)”,居然報名的學生不少,簡直是藐視天下程序員。社會環(huán)境如是,我們不能改變,只能改變自己,鬧市中的安寧,彌足珍貴。許多初學者C++/JAVA沒開始學,立馬使用VC/JBuilder,會使用VC/JBuilder開發(fā)一個HelloWorld程序,就忙不迭的向世界宣告,“我會軟件開發(fā)了”,簡歷上也大言不慚地寫上“精通VC/JAVA”。結(jié)果到軟件公司面試時要么被三兩下打發(fā)走了,要么被駁的體無完膚,無地自容。到處碰壁之后才知道捧起《C++編程思想》《JAVA編程思想》仔細鉆研,早知如此何必當初呀。
“你現(xiàn)在講究簡單方便,你以后的路就長了”,好象也是佛經(jīng)中的勸戒。
4.多實踐,快實踐
軟件開發(fā)是一門工程學科,注重的就是實踐,“君子動口不動手“對軟件開發(fā)人員來講根本就是錯誤的,他們提倡”動手至上”,但別害怕,他們大多溫文爾雅,沒有暴力傾向,雖然有時候蓬頭垢面的一副“比爾蓋茨”樣。有前輩高人認為,學習編程的秘訣是:編程、編程、再編程,筆者深表贊同。不僅要多實踐,而且要快實踐。我們在看書的時候,不要等到你完全理解了才動手敲代碼,而是應(yīng)該在看書的同時敲代碼,程序運行的各種情況可以讓你更快更牢固的掌握知識點。
5 .參考程序代碼
程序代碼是軟件開發(fā)最重要的成果之一,其中滲透了程序員的思想與靈魂。許多人被《仙劍奇?zhèn)b傳》中凄美的愛情故事感動,悲劇的結(jié)局更有一種缺憾美。為什么要以悲劇結(jié)尾?據(jù)說是因為寫《仙劍奇?zhèn)b傳》的程序員失戀而安排了這樣的結(jié)局,他把自己的感覺融入到游戲中,卻讓眾多的仙劍迷扼腕嘆息。
6 .強英文閱讀能力
對學習編程來說,不要求英語,但不能一點不會,。最起碼像JAVAAPI文檔(參考文獻[4.4])這些東西還是要能看懂的,連猜帶懵都可以;旁邊再開啟一個“金山詞霸”??炊嗔司蜁絹碓绞炀?。在學JAVA的同時學習英文,一箭雙雕多好。另外好多軟件需要到英文網(wǎng)站下載,你要能夠找到它們,這些是最基本的要求。英語好對你學習有很大的幫助??谡Z好的話更有機會進入管理層,進而可以成為剝削程序員的“周扒皮”。
7 .不得已才請教別人
筆者在ChinaITLab網(wǎng)校的在線輔導系統(tǒng)中解決學生問題時發(fā)現(xiàn),大部分的問題學生稍做思考就可以解決。請教別人之前,你應(yīng)該先回答如下幾個問題。 你是否在google中搜索了問題的解決辦法? 你是否查看了JAVAAPI文檔? 你是否查找過相關(guān)書籍? 你是否寫代碼測試過? 如果回答都是“是”的話,而且還沒有找到解決辦法,再問別人不遲。要知道獨立思考的能力對你很重要。要知道程序員的時間是很寶貴的。
8 .讀好書
書中自有顏如玉。比爾?蓋茨是一個飽讀群書的人。雖然沒有讀完大學,但九歲的時候比爾?蓋茨就已經(jīng)讀完了所有的百科全書,所以他精通天文、歷史、地理等等各類學科,可以說比爾?蓋茨不僅是當今世界上金錢的首富,而且也可以稱得上是知識的巨富。
如何開始學習java2
一、理解Java思想
Java是一門面向?qū)ο缶幊陶Z言。向?qū)ο缶幊淌荍ava最核心的思想,這也是區(qū)分和C等其他編程語言的一個顯著特征。掌握面一門語言,首先得掌握它的思想,思想決定高度。這就和我們學習語文和英語一樣,漢語學拼音,英語學音標。抓住了核心,學習起來就事半功倍。
二、弄清基本概念
作為一門語言,Java肯定有著豐富而又簡單的概念。弄清這些基本概念也是必不可少的,死記硬背肯定是不行的,重在理解,理解它們之間的區(qū)別與聯(lián)系,分別有那些應(yīng)用。有些同學打開電腦就照著書本敲代碼,根本沒有想過這些代碼中用到了哪些知識點,更談不上理解了,這樣是沒有任何效果的。
三、多練習
只理解了Java的基本概念是遠遠不止的,還要知道怎么去使用。剛開始,你可能會覺得Java中那么多東西怎么也記不住,就連寫一個小小的入門級程序都要涉及到好多東西。但是,當你親手在鍵盤上敲了幾遍之后,你就會覺得之前的那些問題都不是問題了。
四、學會幫助看文檔與源代碼
Java是一門開放源代碼的編程語言。利用網(wǎng)絡(luò)可以下載官方的幫助文檔,當你不知道一個東西怎么用時,你可以打開幫助文檔,你的問題一下就解決了。如果還不能解決的話,打開搜索引擎,輸入你的問題,你一定會找到答案的。如果你想弄懂Java底層的原理的話,可以去網(wǎng)上下載對應(yīng)的源代碼。看了源代碼之后,你會發(fā)現(xiàn)Java的世界是多么的奇妙,也會提高你Java編程的水平。
掌握一種好的而且適合自己的學習方法很重要。有些同學在學習Java的過程中會陷入誤區(qū),下面將給大家列出初學者容易進入的誤區(qū)。
五、不要盲目追求速度,不重代碼質(zhì)量
速度很重要,但代碼質(zhì)量更重要。一個在追求速度而不注重代碼質(zhì)量的環(huán)境下完成的項目,肯定是會有很多問題的,后期要花更多的人力物力來彌補,得不償失。
總之,Java是一門容易上手的編程語言,但想要融會貫通,除了掌握良好的學習方法之外,努力是必不可缺少的。學習java要對自己有充分的信心,調(diào)整學習方法和態(tài)度。零基礎(chǔ)學java,不知道該如何入手?也不知道學習的方向,很多人會問零基礎(chǔ)怎么樣學習,有沒有什么入門的書籍推薦;只要方法正確,零基礎(chǔ)學好java也是有機會的哦。
如何開始學習java3
怎樣學習Java
1.不要看到別人的回復第一句話就說:給個代碼吧!你應(yīng)該想想為什么。當你自己想出來再參考別人的提示,你就知道自己和別人思路的差異。
2.初學者請不要看太多太多的書那會誤人子弟的,先找本系統(tǒng)的學,很多人用了很久都是只對部分功能熟悉而已,不系統(tǒng)還是不夠的。
3.看幫助,不要因為很難而自己是初學者所以就不看;幫助永遠是最好的參考手冊,雖然幫助的文字有時候很難看懂,總覺得不夠直觀。
4.不要被對象、屬性、方法等詞匯所迷惑;最根本的是先了解最基礎(chǔ)知識。
5.不要放過任何一個看上去很簡單的小問題--他們往往并不那么簡單,或者可以引伸出很多知識點;不會舉一反三你就永遠學不會。
6.知道一點東西,并不能說明你會寫腳本,腳本是需要經(jīng)驗積累的。
7.學腳本并不難,JSP、ASP、PHP等等也不過如此--難的是長期堅持實踐和不遺余力的博覽群書; 8.看再多的書是學不全腳本的,要多實踐
9.把時髦的技術(shù)掛在嘴邊,還不如把過時的技術(shù)記在心里; 10.學習腳本最好的方法之一就是多練習;
11.在任何時刻都不要認為自己手中的書已經(jīng)足夠了;
12.看得懂的書,請仔細看;看不懂的書,請硬著頭皮看;
13.別指望看第一遍書就能記住和掌握什么——請看第二遍、第三遍;
14.請把書上的例子親手到電腦上實踐,即使配套光盤中有源文件;
15.把在書中看到的有意義的例子擴充;并將其切實的運用到自己的工作中;
16.不要漏掉書中任何一個練習——請全部做完并記錄下思路;
17.當你用腳本到一半?yún)s發(fā)現(xiàn)自己用的方法很拙劣時,請不要馬上停手;請盡快將余下的部分粗略的完成以保證這個代碼的完整性,然后分析自己的錯誤并重新編寫和工作。
18.別心急,寫腳本確實不容易;水平是在不斷的實踐中完善和發(fā)展的;
19.每學到一個腳本難點的時候,嘗試著對別人講解這個知識點并讓他理解----你能講清楚才說明你真的理解了;
20.記錄下在和別人交流時發(fā)現(xiàn)的自己忽視或不理解的知識點;
21.保存好你做過的所有的源文件----那是你最好的積累之一;
22.對于網(wǎng)絡(luò),還是希望大家能多利用一下,很多問題不是非要到論壇來問的,首先你要學會自己找答案,比如google、百度都是很好的搜索引擎,你只要輸入關(guān)鍵字就能找到很多相關(guān)資料,別老是等待別人給你希望,看的出你平時一定也很懶!
23,到一個論壇,你學會去看以前的帖子,不要什么都不看就發(fā)帖子問,也許你的問題早就有人問過了,你再問,別人已經(jīng)不想再重復了,做為初學者,誰也不希望自己的帖子沒人回的。
24,雖然不是打擊初學者,但是這句話還是要說:論壇論壇,就是大家討論的地方,如果你總期望有高手總無償指點你,除非他是你親戚!!
討論者,起碼是水平相當?shù)牟庞杏懻摰恼f法,如果水平真差距太遠了,連基本操作都需要別人給解答,誰還跟你討論呢。
浮躁的人容易問:我到底該學什么;----別問,學就對了;
浮躁的人容易問:Js有錢途嗎;----建議你去搶銀行;
浮躁的人容易說:我要中文版!我英文不行!----不行?學呀!
浮躁的人分兩種:只觀望而不學的人;只學而不堅持的人;
浮躁的人永遠不是一個高手。
怎樣學好C#編程
1、打好堅實的基礎(chǔ):變量、流程控制語句、類、接口、特別是繼承關(guān)系,一定要理解,當然剛開始的時候肯定理解程度不深,但至少要求記住。
2、看別人寫的程序,完整看完一個例子。比如一個c#編寫的簡單網(wǎng)站。然后好好的思考下,給你的啟發(fā),哪些地方讓你理解了基礎(chǔ)知識沒理解透的內(nèi)容,哪些地方讓你茅塞頓開!
3、自己動手去做。自己動手寫一個完整的程序,不急著編碼,先想想自己做的程序都要實現(xiàn)什么功能,程序的結(jié)構(gòu)應(yīng)該怎樣設(shè)計:是不是要用到接口、怎樣可以提高代碼的重復利用率等等;甚至可以用紙筆畫畫,心中有了一個基本的框架,然后再編碼,遇到難點寫不下去時多上網(wǎng)和同行交流。
4、有了自己的第一個程序,然后就是回過頭來總結(jié)了,記住一定要善于總結(jié)自己在實踐中的經(jīng)驗。如果你回過頭來發(fā)現(xiàn)你以前寫的程序是多么的“嫩”,證明你就在進步了。發(fā)現(xiàn)以前自己沒有掌握的東西,再進一步去深研。
如何開始學習java4
從大三開始算,我學習java已經(jīng)有一年的時間了,不過雖然時間長,但是對于現(xiàn)在的我還是一個初學者,懂不了多少的java初學者。期間曾迷茫過,曾困惑過,走了不少的彎路,老師布置的試驗作業(yè)每次都是不會做,每次都是要問同學,這個代碼什么意思啊?為什么用這條代碼,用別的不行嗎?甚至后來根本沒耐心問,索性就復制同學的作業(yè)交上去。但是都是各種0分,害的同學也這樣,不過他能找老師反駁,而我卻沒實力。。。漸漸的,我認識到這樣下去是不行的,我必須改正自己的學習態(tài)度和方式。接下提到的就是我這一年來的java學習心得。 剛一開始學習java時,我就已經(jīng)學習過C語言,不過C語言學的不是很好,所以開始看到j(luò)ava的時候我很反感,看著源代碼,都不知道失什么意思??磿臅r候一看到源代碼就頭疼,因為根本看不懂。那段時間根本就是一無所獲,在圖書館借了一本書,關(guān)java的語法特性,與別的語言相比的優(yōu)點,什么跨平臺,源代碼公開,什么write 、 once 、 run 、 anywhere,能說得頭頭是道,可是一到具體的問題,想寫一些具體的東西,問題就都來了,根本不知道該怎么下手。所以每次李旺老師布置的試驗作業(yè)都沒的按時完成。漸漸的時間過去了,一點進展都沒有,我都幾乎要放棄了。
而后又同學經(jīng)常來宿舍跟我講解,我很感謝他。慢慢的我也理解了一些知識。從他那里,我認識到,JAVA是一門計算機語言,是人類發(fā)明的語言,應(yīng)該比人類語言更容易學習,只要你有一種必勝學習JAVA心態(tài)就可以成功。學習JAVA的方法:JAVA學習中,首先要做到課前、課后復習及預(yù)習,要時時保持一個清醒的頭腦;多和同學溝通;互相學習;取長補短;在學習中做到幫助他人或他人幫助自己。學習java,的確要學習的東西很多,就像同學提到的。Java不像、net一家獨大,Java的繁盛在于開源社區(qū)的龐大,這也帶來了分支太多的問題,怎樣選擇一條好的學習路線,對于初學者來說,的確是一件很迷茫的事。其實不管java東西再多,總有規(guī)律可循。對于學習java基礎(chǔ)的經(jīng)驗就是多做、多思考,基礎(chǔ)知識的學習不能不求甚解,要追本溯源,弄清問題的本質(zhì)。這樣才能舉一反三,由點及面。java的所有編程思路都是“面向?qū)ο蟆钡木幊?。所以大家在往更高境界發(fā)展以前一定要打好基礎(chǔ),基礎(chǔ)是王道。我們的基礎(chǔ)要扎實扎實再扎實。所謂打好基 礎(chǔ)并不是說要熟悉所有的java代碼。要了解java的結(jié)構(gòu)。class,methode,object,各種套用import,e_tend 讓自己在結(jié)構(gòu)上對java有個立體而且整體的了 解。
學Java千萬不要浮躁。說到浮躁,這也是一個很值得我深思的問題。我覺得我自己也有這樣的傾向,不僅是我,估計大多數(shù)的人都有這個毛病。總是喜歡討論什么語言最好,什么語言功能強大。這種討論倒沒有錯,不過真正學習的時候,浮躁會使你失去很多。在學習過程中,我很努力地使自己保持心理的平靜,從基礎(chǔ)學起,甚至是一些看上去完全沒有必要的基礎(chǔ)。
同學要扎扎實實,一步一個腳印的逐步學習,不要想著一步登天。不然我問他的時候,他跟我講的我也都不懂,這樣對我也沒用。
要多查API,它是Java編程的基本方法,也是編程過程中所不斷利用的資源。Java的學習過程不僅僅是基本語法的學習,更多的是去學習和掌握它所提供的API類庫。對于所接觸到的類,方法,都去仔細去閱讀文檔的說明,再用自己編寫的實例去此時一下。而且不要只看而不練,學好java靠的還是實踐,在一周兩節(jié)的實驗課要認真編程,不懂問同學或問李老師。只有理論和實踐相結(jié)合才能真正掌握只是和技能。而且還要懂得運用百度和谷歌,遇到問題可以先搜索一下,實在不懂再找同學。理論學習。通過對理論的學習,盡量了解新知識的概念;學習之后只是粗略的了解概念,不能和實際很好的結(jié)合。根據(jù)理論學習的知識,考慮在什么場合下可以應(yīng)用這個新知識,哪些地方已經(jīng)應(yīng)用了這個概念,建立對新知識的感性認識。 java是一種面向?qū)ο蟮牟僮髡Z言,必須要明白這點,才能從總體上把握java。學習編程,首先要從分析別人的代碼開始,明白他們的思路,認真分析,在學習的過程中一定要動手做、寫代碼,九比如說老師布置的試驗作業(yè),一定要自己做,不能抄同學的,首先不是為了應(yīng)付老師,而是要讓自己真正懂得java,這樣慢慢的,以后的試驗自己就又實力去做。學習java不是抱一本書看看就行。很多東西和體會必須自己動手才能真正屬于自己,實踐失最重要的。而且還可以從實驗中,體會到編程的樂趣,感受到自己做好一個程序,然后運行出結(jié)果,失很有成就感的!
而對于J2EE,首先要先學JSP。要明白JSP的工作原理,在一個JSP文件第一次被請求時,JSP引擎把該JSP文件轉(zhuǎn)換成為一個servlet,而這個引擎本身也是一個servlet,在JSWDK或WEBLOGIC中,它就是JspServlet。 JSP引擎先把該JSP文件轉(zhuǎn)換成一個Java源文件,在轉(zhuǎn)換時如果發(fā)現(xiàn)jsp文件有任何語法錯誤,轉(zhuǎn)換過程將中斷,并向服務(wù)端和客戶端輸出出錯信息JSP的調(diào)試比較麻煩,特別是當bean是在一個session中存在時,更加困難。得從好幾個頁面開始往里面走才行。通常是用out、println或System、out、print()來打一大堆的信息來查問題。如果是用jbuilder做開發(fā),它能直接調(diào)試JSP、不過更重要的是知道錯誤產(chǎn)生的原因及解決方法。JSP是用JAVA寫的,所以它是大小寫敏感的,用過其他編程語言的人最容易犯這個錯誤。另外在瀏覽器的地址欄中輸入的訪問JSP的地址也是區(qū)分大小寫的、 在jsp中判斷字符串要使用compareTo方法,不要用==,因為在java中String變量不是一個簡單的變量而是一個類實。所以JSP的知識不能欠缺,理解什么是servlet,什么是java bean,熟悉jsp常使用的標簽 對于學習java基礎(chǔ)的經(jīng)驗就是多做、多思考,基礎(chǔ)知識的學習不能不求甚解,要追本溯源,弄清問題的本質(zhì)。這樣才能舉一反三,由點及面。對于抽象的東西要能具體化,對于具體的東西要能抽象化?,F(xiàn)在我學習java基礎(chǔ)一直使用的是《Java核心技術(shù)》這本書,這本書失同學推薦我看的,感覺挺不錯的,很基礎(chǔ)很全面。這本書強調(diào)重視基礎(chǔ),如果java基礎(chǔ)打的牢,在學習那些java框架就是非常輕松的事了。
在這一年的學習過程中,通過同學的幫助和李旺老師的教導,我對java有了初步的認識和了解。學習java首先主要是學習了Java的程序結(jié)構(gòu),包括了循環(huán)、數(shù)組、類和方法以及字符串處理等內(nèi)容。在學習期間,上課認真聽老師的講解,特別是課后練習和上機的題目,以及老師提供給我們的有關(guān)學習編程語言的方法和技巧,對于我鞏固所學的理論知識有很大的幫助?,F(xiàn)在我也只是剛剛開始學習Java語言,所以想真正掌握Java技術(shù),以后還會有很長的一段過程需要我們更加努力地去學習。畢竟,知識需要靠積累才能真正掌握。
如何開始學習java5
1.買一本很好的Java書
相信我這會有效果的,買一本Java書。我知道有很多網(wǎng)絡(luò)資源,諸如新聞刊物,Java輔導博客,但是這些都比不過一本好的舊書,無論是印刷版本的,還是Kindle形式的書。電腦上的pdf版本可能不是很合適。電腦帶有很多附加的干擾,反正這對我來說不行。
如何確定一本好書。與有經(jīng)驗的人討論,或者在合適的論壇咨詢。我能告訴你對我什么書起作用了。我很久之前用Cay S. Horstmann 和 GaryCornell的Java核心技術(shù)卷1和卷2(Core Java Volume I and II by Cay S. Horstmann and Gary Cornell)開始我的Java旅程。
如果你依舊猶豫入手哪本書,我向你推薦網(wǎng)上免費的Java電子書和指導。Java語言說明書是一個不錯的讀物,雖然它并不是一般傳統(tǒng)意義上的書籍。
2.加入一個開源的Java項目
在你買了一本書后,不用說你得通讀它。我知道,這是一個困難而乏味的事情。閱讀書中的每一行內(nèi)容。有一個扎實的基礎(chǔ)非常重要。那么怎么從閱讀中獲得興趣呢?加入一個開源的Java項目。你可能一開始不懂,那么就呆在那,看著他們的活動。閱讀他們的清單郵件。
你將感受到一種氣氛和一種學習產(chǎn)生的興趣。這會給你閱讀書籍帶來興趣。保持這種興趣,并繼續(xù)下去。我這有10個有趣的Java項目,你可以去參與并學習。這些項目來自不同的領(lǐng)域,并處于不同的階段。這些項目可能點燃你學習Java的興趣。
3.創(chuàng)建一個Java應(yīng)用
好了,動力夠了,你需要更多激勵方式。自己著手做一些新鮮的事情。創(chuàng)建一個Java應(yīng)用。為這個應(yīng)用做設(shè)計,開發(fā)以及測試。全部都靠你自己。
4.加入一個Java論壇
解決問題對于了解一種語言的細微差別非常重要。選擇一個活動頻繁的Java論壇。加入他們,從其他人的問題中學習,并且也嘗試給予自己的貢獻。你想了解的優(yōu)秀的Java論壇
如何開始學習java6
1、不做紙上談兵的事,真正學以致用
個人自學Java會面臨不知從何下手的問題,特別對于從沒接觸過編程的新人來說,自學Java的難度更大。
從網(wǎng)上最常見的問題“自學Java應(yīng)該讀哪些書”“自學Java有哪些值得去的網(wǎng)站”等問題可以看出,想自學Java的人其實是非常迷茫的,并且通過自學的Java知識并不系統(tǒng),容易造成似懂非懂,真正能夠運用到工作中的知識其實少之又少,對于日后的工作用處并不大。
Java培訓班的課程都是系統(tǒng)全面的整體,無論個人基礎(chǔ)的好壞,都能真正做到從0開始,循序漸進的過渡到實際項目演練,在實際項目中驗證所學知識的掌握程度,這是個人自學難以企及的巨大優(yōu)勢。
像達內(nèi)這種行業(yè)領(lǐng)頭軍,有多年IT教育經(jīng)驗的培訓機構(gòu),會定期更新相關(guān)課程,讓你學到的都是行業(yè)領(lǐng)先的技術(shù),確保學員所學的知識都能與時俱進,可以切實的用在實際工作中。
2、行業(yè)精英授課,學知識的同時增長經(jīng)驗
學習的過程中必然會出現(xiàn)各種各樣的問題,特別是新進入一個領(lǐng)域,遇到的問題會更多。對于自學Java編程的學習者來說,除非有極大的興趣和熱情,否則每天遇到的各種各樣的問題可能會把你逼瘋,分分鐘想要放棄,真正能通過自學Java編程堅持到最后的,只有極少數(shù)特別有天賦者。
參加Java培訓班,都有專業(yè)的老師帶課,一方面可以在講課的過程中告知學員最正確的編程技巧和方法,讓學員在最開始就能避免走彎路,課后有問題還可以直接向老師提問,在于老師溝通交流的過程中收獲更多新知識。
達內(nèi)Java講師都是之前在一線互聯(lián)網(wǎng)企業(yè)工作過的行業(yè)精英,有著豐富的項目經(jīng)驗和職場經(jīng)驗,學生們在學習Java的同時,收獲的不僅是簡單的知識,還有最寶貴的項目經(jīng)驗分享,這些通過自學是完全不能體驗的。
3、節(jié)省80%的學習時間,比別人早一步進入職場
據(jù)調(diào)查統(tǒng)計,對于有一定基礎(chǔ)的學習者而言,一般職業(yè)培訓培養(yǎng)一個一般的中等程序員的周期是四個月左右,而且是必須是全職學習,除了學習外什么也不能做。那如果放到自學上那會是幾年呢?2年,3年,還是遙遙無期?
如果以進入IT行業(yè),拿高薪為目標,越早入行,競爭壓力越小,待遇也就越好,時間也是成本,學習周期的縮短正好彌補培訓的費用, 舍得為自己投資,才能收獲更多~
看完以上關(guān)于是否參加Java培訓的分析,你理清楚自己的思路了嗎?如果只是單純的興趣愛好,自學或參加Java培訓均可,如果打算從事IT行業(yè),還是參加Java培訓為好,越早入行,越早享受行業(yè)紅利~
如何開始學習java7
如何開始學習java8
1明確面向?qū)ο蟮姆懂?/p>
我們必須明確一個大方向,也就是說現(xiàn)在面向?qū)ο蟮木幊谭懂牎1M管人工智能曾經(jīng)有所浪潮(看看Borland為什么有Turbo Prolog),但未來5-工業(yè)界廣泛承認并接受的將是面向?qū)ο笫降木幊獭?/p>
工業(yè)界目前最流行的面向?qū)ο缶幊陶Z言就是C++和Java。所以基本上鎖定這兩個方向就可以了。而且完全可以同時掌握。
2掌握Java的精華特性
掌握Java的精華特性的同時,一定要知道為什么。比如,Interface和multi-thread。用interface是更好的多繼承的模型,而多線程則是設(shè)計到語言一級的重要特性。要完全理解interface是為什么,用多線程又有幾種常用的編程模型。
3開始進行設(shè)計
理解了語言的特性是為什么了之后,就可以試著上升到設(shè)計這個層次,畢竟學習語言是要用的。目前比較好的開發(fā)模式是采用自定向下的面向?qū)ο蟮脑O(shè)計,加上MVC的模式(你可以看一下我介紹的關(guān)于MVC的內(nèi)容)。首先要找出最頂層的對象(這往往是最難的),然后一層一層往下遞歸,記住每次應(yīng)符合7+/-2的原則,因為我們?nèi)说亩逃洃浘褪沁@樣。一般有圖形用戶界面的應(yīng)從界面開始設(shè)計。
4學習設(shè)計模式
有了基本設(shè)計模型后,可以學一些設(shè)計模式(Design Pattern)。這是目前證明很有效的。比如體系結(jié)構(gòu)模式(Layering分層,Pipe/Filter管道或過濾器),設(shè)計模式(有很多,比如對象池Object Pool、緩沖池Cache等),編程模式(比如Copy-on-Write)。
懂了這些模式之后,就會對系統(tǒng)的整體結(jié)構(gòu)有很好的把握,而學術(shù)上也有傾向一個系統(tǒng)完全可以由各種模式組合而成。前面提到的MT實際上就有好幾種模式,掌握后就不用自己花很多時間去試了。另外一個很重要的領(lǐng)域就是并行和分布式計算領(lǐng)域,大概有20種左右。
5進行編程實踐
接下來就不能紙上談兵了,最好的方法其實是實踐。一般教科書上的例子并不能算是實踐,只能算是讓你掌握語言特性用的。而提倡做實際的Project也不是太好,因為你還沒有熟練的能力去綜合各種技術(shù),這樣只能是你自己越來越迷糊。
我認為比較好的方法是找一些比較經(jīng)典的例子,每個例子比較集中一種編程思想而設(shè)計的,比如在我的實踐當中,我曾經(jīng)學習過一個很經(jīng)典的例子就是用Java實現(xiàn)的HotDraw(源自SmallTalk),你可以用rolemodel或hotdraw在搜索引擎上找一下,我記不大清楚了。好象 是個網(wǎng)站,上面有原代碼和一些基本設(shè)計的文檔。
另一個來源可以到 是個不錯的文檔基地。從HotDraw上我學到了什么是Framework,以及如何用rolemodel的方式來構(gòu)造,這樣我就可以應(yīng)用到其他的地方。順便說一句,這個例子你絕對不會覺得小,只會覺得大,并且他還是真正的商用的Framework。
6學習修改經(jīng)典例子
結(jié)合前面學到的設(shè)計模式你就可以很好的理解這些經(jīng)典的例子。并且自己可以用他來實現(xiàn)一些簡單的系統(tǒng)。如果可以對他進行進一步的修改,找出你覺得可以提高性能的地方,加上自己的設(shè)計,那就更上一個層次了,也就會真正地感到有所收獲。
好象以上談的跟Java沒什么關(guān)系,其實我們早就應(yīng)該從單純的學習語言到真正的學習好編程的領(lǐng)域。學習技術(shù)是沒有止境的,你學習第一種語言可能要半年時間,以后每種語言都不應(yīng)該超過兩個月,否則你會覺得學習語言是包袱,是痛苦。
7學以致用
學習是為了用的,是為了讓你的程序產(chǎn)生價值,把握住這個原則會比較輕松點。
如何開始學習java9
1、明確面向?qū)ο蟮姆懂?/p>
我們必須明確一個大方向,也就是說現(xiàn)在面向?qū)ο蟮木幊谭懂?。盡管人工智能曾經(jīng)有所浪潮(看看Borland為什么有Turbo Prolog),但未來5-工業(yè)界廣泛承認并接受的將是面向?qū)ο笫降木幊獭?/p>
工業(yè)界目前最流行的面向?qū)ο缶幊陶Z言就是C++和Java。所以基本上鎖定這兩個方向就可以了。而且完全可以同時掌握。
2、掌握Java的精華特性
掌握Java的精華特性的同時,一定要知道為什么。比如,Interface和multi-thread。用interface是更好的多繼承的模型,而多線程則是設(shè)計到語言一級的重要特性。要完全理解interface是為什么,用多線程又有幾種常用的編程模型。
3、開始進行設(shè)計
理解了語言的特性是為什么了之后,就可以試著上升到設(shè)計這個層次,畢竟學習語言是要用的。目前比較好的開發(fā)模式是采用自定向下的面向?qū)ο蟮脑O(shè)計,加上MVC的模式(你可以看一下我介紹的關(guān)于MVC的內(nèi)容)。首先要找出最頂層的對象(這往往是最難的),然后一層一層往下遞歸,記住每次應(yīng)符合7+/-2的原則,因為我們?nèi)说亩逃洃浘褪沁@樣。一般有圖形用戶界面的應(yīng)從界面開始設(shè)計。
4、學習設(shè)計模式
有了基本設(shè)計模型后,可以學一些設(shè)計模式(Design Pattern)。這是目前證明很有效的。比如體系結(jié)構(gòu)模式(Layering分層,Pipe/Filter管道或過濾器),設(shè)計模式(有很多,比如對象池Object Pool、緩沖池Cache等),編程模式(比如Copy-on-Write)。
懂了這些模式之后,就會對系統(tǒng)的整體結(jié)構(gòu)有很好的把握,而學術(shù)上也有傾向一個系統(tǒng)完全可以由各種模式組合而成。前面提到的MT實際上就有好幾種模式,掌握后就不用自己花很多時間去試了。另外一個很重要的領(lǐng)域就是并行和分布式計算領(lǐng)域,大概有20種左右。
5、進行編程實踐
接下來就不能紙上談兵了,最好的方法其實是實踐。一般教科書上的例子并不能算是實踐,只能算是讓你掌握語言特性用的。而提倡做實際的Project也不是太好,因為你還沒有熟練的能力去綜合各種技術(shù),這樣只能是你自己越來越迷糊。
我認為比較好的方法是找一些比較經(jīng)典的例子,每個例子比較集中一種編程思想而設(shè)計的,比如在我的實踐當中,我曾經(jīng)學習過一個很經(jīng)典的例子就是用Java實現(xiàn)的HotDraw(源自SmallTalk),你可以用rolemodel或hotdraw在搜索引擎上找一下,我記不大清楚了。好象 是個網(wǎng)站,上面有原代碼和一些基本設(shè)計的文檔。
另一個來源可以到 是個不錯的文檔基地。從HotDraw上我學到了什么是Framework,以及如何用rolemodel的方式來構(gòu)造,這樣我就可以應(yīng)用到其他的地方。順便說一句,這個例子你絕對不會覺得小,只會覺得大,并且他還是真正的商用的Framework。
6、學習修改經(jīng)典例子
結(jié)合前面學到的設(shè)計模式你就可以很好的理解這些經(jīng)典的例子。并且自己可以用他來實現(xiàn)一些簡單的系統(tǒng)。如果可以對他進行進一步的修改,找出你覺得可以提高性能的地方,加上自己的設(shè)計,那就更上一個層次了,也就會真正地感到有所收獲。
好象以上談的跟Java沒什么關(guān)系,其實我們早就應(yīng)該從單純的學習語言到真正的學習好編程的領(lǐng)域。學習技術(shù)是沒有止境的,你學習第一種語言可能要半年時間,以后每種語言都不應(yīng)該超過兩個月,否則你會覺得學習語言是包袱,是痛苦。
7、學以致用
學習是為了用的,是為了讓你的程序產(chǎn)生價值,把握住這個原則會比較輕松點。
如何開始學習java10
1、我們必須明確一個大方向,也就是說現(xiàn)在面向?qū)ο蟮木幊谭懂牎?/p>
2、工業(yè)界目前最流行的面向?qū)ο缶幊陶Z言就是C++和Java。所以基本上鎖定這兩個方向就可以了。而且完全可以同時掌握。
3、掌握Java的精華特性而且一定要知道為什么。比如,Interface和multi-thread。用interface是更好的多繼承的模型,而多線程則是設(shè)計到語言一級的重要特性。要完全理解interface是為什么,用多線程又有幾種常用的編程模型。
4、理解了語言的特性是為什么了之后,就可以試著上升到設(shè)計這個層次,畢竟學習語言是要用的。目前比較好的開發(fā)模式是采用自定向下的面向?qū)ο蟮脑O(shè)計,加上MVC的模式。首先要找出最頂層的對象(這往往是最難的),然后一層一層往下遞歸,記住每次應(yīng)符合7+/-2的原則,因為我們?nèi)说亩逃洃浘褪沁@樣。一般有圖形用戶界面的應(yīng)從界面開始設(shè)計。
5、有了基本設(shè)計模型后,可以學一些設(shè)計模式(Design Pattern)。這是目前證明很有效的。比如體系結(jié)構(gòu)模式(Layering分層,Pipe/Filter管道或過濾器),設(shè)計模式(有很多,比如對象池Object Pool、緩沖池Cache等),編程模式(比如Copy-on-Write)。懂了這些模式之后,就會對系統(tǒng)的整體結(jié)構(gòu)有很好的把握,而學術(shù)上也有傾向一個系統(tǒng)完全可以由各種模式組合而成。前面提到的MT實際上就有好幾種模式,掌握后就不用自己花很多時間去試了。另外一個很重要的領(lǐng)域就是并行和分布式計算領(lǐng)域,大概有20種。
6、接下來就不能紙上談兵了,最好的方法其實是實踐。一般教科書上的例子并不能算是實踐,只能算是讓你掌握語言特性用的。而提倡做實際的項目也不是太好,因為你還沒有熟練的能力去綜合各種技術(shù),這樣只能是你自己越來越迷糊。瘋狂軟件的工程師經(jīng)常發(fā)現(xiàn)大量的兄弟培訓在招生或教學時往往以學員完成了什么項目作為最高標準,事實上,這種方式不一定合理,其根本原因在于項目只是實際練兵的載體,實現(xiàn)同樣功能的學員可以在技術(shù)認知上天差地別。以java SE為例,初學一個月所遇學員肯定做不出非常大型的企業(yè)項目,瘋狂軟件工程師這時候就強調(diào)學員需完成的不單應(yīng)是一個項目,工程師將項目的評價標準有意識放在了高內(nèi)聚、低耦合、項目架構(gòu)、復用重用上等思維上,引導成熟的學習標準和工程師思維。
如何開始學習java11
1. true、false和null在IDE中雖然以不同的顏色顯示,但是并不是關(guān)鍵字,而是“字面常量”,就和String類型的abc一樣。
2. String類是非可變類,其對象一旦創(chuàng)建,就不可銷毀。String類那些看似修改字符序列的方法實際上都是返回新創(chuàng)建的String對象,而不是修改自身對象。
3. 由于String對象是不可改變的,因此具有線程安全性,可以自由地實現(xiàn)共享。
4. 在String類內(nèi)部,是使用一個字符數(shù)組(char[])來維護字符序列的。String的最大長度也就是字符數(shù)組的最大長度,理論上最大長度為int類型的最大值,即2147483647.在實際中,一般可獲取的最大值小于理論最大值。
5. 在Java中,數(shù)組也是類,數(shù)組聲明的引用變量指向數(shù)組類型的對象。
6. Unicode碼使用16位字符編碼,在Java中用char類型來表示?,F(xiàn)在Unicode已經(jīng)擴展到一百萬個字符,超出16位限制的成為增補字符。所有增補字符都不能用字符常量來表示。
7. 當short,byte,char參加運算時,結(jié)果為int型,而非與較高的類型相同。如果變量是byte,short,char類型,當對其賦予編譯時期的常量,而該常量又沒有超過變量的取值范圍時,編譯器就可以進行隱式的收縮轉(zhuǎn)換。這種隱式的收縮轉(zhuǎn)換是安全的,因為該收縮轉(zhuǎn)換只適用于變量的賦值,而不適用于方法調(diào)用語句,即不適用于方法調(diào)用時的參數(shù)傳遞。
8. 注意char類型,這是一個無符號類型。因此,char與short或char與byte之間的轉(zhuǎn)換必須顯示地使用類型轉(zhuǎn)換。 從byte到char的轉(zhuǎn)換為擴展收縮轉(zhuǎn)換,該轉(zhuǎn)換比較特殊,即先將byte擴展轉(zhuǎn)換到int,然后再收縮到char。
9. 在整型數(shù)據(jù)間的擴展轉(zhuǎn)換中,如果操作數(shù)是char類型(無符號類型),則進行無符號擴展,擴展位為0.如果操作數(shù)是byte,short或int(有符號類型),則進行有符號擴展,擴展位為該變量的符號位。
10. float類型可以保留7~8個有效數(shù)字,而double類型可以保留15~16個有效數(shù)字,因而當int類型或long類型數(shù)值多于double或float地有效數(shù)字時,該值的一些最低有效位就會丟失,從而造成精度丟失,這時,就會采用IEEE754最近舍入模式,提取與該整型值最接近的浮點值。盡管整型向浮點型的轉(zhuǎn)換屬于擴展轉(zhuǎn)換,但當數(shù)值很大或很小(絕對值很大)時,就會產(chǎn)生一定的精度丟失。
11. 浮點的相除與求余運算不同與整型的相除與求余運算,當除數(shù)為0時,浮點運算不會產(chǎn)生ArithmeticException異常。
12. main方法在表現(xiàn)行為上,與其他方法基本相同,可以重載,由其他方法調(diào)用,繼承,隱藏,也可以拋出異常,帶有類型參數(shù)。我們也可以在一個程序中通過反射來調(diào)用main方法(或其他方法)。
13. 當兩個或多個方法的名稱相同,而參數(shù)列表不同時,這幾個方法就構(gòu)成了重載。重載方法可以根據(jù)參數(shù)列表對應(yīng)的類型與參數(shù)的個數(shù)來區(qū)分,但是,參數(shù)的名稱、方法的返回類型,方法的異常列表與類型參數(shù)不能作為區(qū)分重載方法的條件。
14. 構(gòu)造器是遞歸調(diào)用的,子類的構(gòu)造器會調(diào)用父類的構(gòu)造器,直到調(diào)用Object類的構(gòu)造器為止。
15. 構(gòu)造器沒有創(chuàng)建對象,構(gòu)造器是使用new創(chuàng)建對象時由系統(tǒng)調(diào)用的,用來初始化類的實例成員。從順序上說,先是創(chuàng)建對象,然后再調(diào)用構(gòu)造器的。(構(gòu)造器并沒有產(chǎn)生新的對象)
16. 默認的構(gòu)造器不為空,該構(gòu)造器會調(diào)用父類的無參構(gòu)造器,并可能執(zhí)行實例成員變量的初始化。所以,默認的構(gòu)造器至少調(diào)用了父類的構(gòu)造器,它做的工作還可能更多,包括實例變量聲明初始化與實例初始化塊,都是在構(gòu)造器中執(zhí)行的。
17. 當==或!=運算符的兩個操作數(shù)的類型一個是基本數(shù)據(jù)類型,另一個是包裝類引用類型時,將引用類型拆箱轉(zhuǎn)換為基本數(shù)據(jù)類型,然后比較兩個基本數(shù)據(jù)類型的值是否相等。
18. 接口是完全抽象的設(shè)計,不能實例化。使A用new方式創(chuàng)建的借口類型,實際上是創(chuàng)建了一個匿名類,該匿名類實現(xiàn)了接口類型。
19. 如果兩個接口聲明了相同的變量x,則當某接口同時繼承這兩個接口,或者某類同時實現(xiàn)這兩個接口時,通過簡單名稱訪問會產(chǎn)生編譯錯誤。
20. 如果兩個接口中聲明了相同名稱的方法m,并且兩個方法沒有構(gòu)成重載,則當某接口能夠同時繼承這兩個接口,或者某類能夠同時繼承這兩個接口時,必須存在一種方法簽名,使得該簽名同時為兩個m方法簽名的子簽名,并且在方法的返回類型上,必須存在一種類型,使得該類型同時為兩個m方法返回類型的可替換類型。
如何開始學習java11篇相關(guān)文章: