作為一個(gè)Java程序員來說,工作中根本用不到C語言,所以大學(xué)學(xué)的C語言基礎(chǔ)基本也忘了。
C語言主要用于硬件或者PC的圖形界面程序或游戲的主要開發(fā)語言。因?yàn)镃語言接近底層,效率性能比Java更好。
Java更多的是用來做網(wǎng)站或App的后臺(tái),總體來說是涉及到網(wǎng)絡(luò)相關(guān)的應(yīng)用程序。
我也是自學(xué)的Java目前在北京工作,自學(xué)一路上也是坑坑洼洼不少,既然看到題主的困惑,在這里把一些學(xué)習(xí)Java的一些理解給題主分享一下。
首次回答第一個(gè)問題,不學(xué)C語言,也可以學(xué)Java。
然后入門的話,很多人裝逼說 看《Java編程思想》。實(shí)際上這本書適合有一定經(jīng)驗(yàn)的人,回顧總結(jié)來看。學(xué)習(xí)Java的過程應(yīng)該是 先學(xué)基礎(chǔ),掌握基礎(chǔ)語法,再學(xué)框架,也是掌握使用,然后再回過頭來,學(xué)習(xí)基礎(chǔ),這個(gè)時(shí)候需要深入學(xué)習(xí),源碼實(shí)現(xiàn),JVM底層原理,高并發(fā),這些。
所以入門來說 我建議最好是先看 《Java核心技術(shù)I》
然后再看《Java編程的邏輯》這本書講了很多計(jì)算機(jī)理論與Java的聯(lián)系,以及對基礎(chǔ)底層的實(shí)現(xiàn)的講解,如果看不懂,可以再找?guī)妆救腴T書看看。
基礎(chǔ)牢固之后,可以看看框架,在此推薦兩本《Spring4.x企業(yè)開發(fā)實(shí)戰(zhàn)》以及《Mybatis深入淺出》 現(xiàn)在企業(yè)中最主流的是 SSM 或者 SpringBoot+Mybatis ,很少企業(yè)會(huì)使用Hibernate作為ORM層框架,所以暫時(shí)不需要研究。
當(dāng)框架有個(gè)大體的掌握后,這時(shí)可以再回頭深入基礎(chǔ),為研究框架源碼及架構(gòu)思想做準(zhǔn)備。
首先推薦馬丁大神的《重構(gòu)-改善既有代碼的藝術(shù)》,這本書講解了什么樣的代碼是有壞味道的代碼,講了很多復(fù)用代碼的小技巧,建議必讀,經(jīng)典,我看了兩遍。
然后推薦看看設(shè)計(jì)模式,首推《研磨設(shè)計(jì)模式》,這本書實(shí)體書已經(jīng)買不到了,我有電子版,題主需要可以私聊我,次推《設(shè)計(jì)模式之禪》這本書通俗易懂,但不如研磨設(shè)計(jì)模式清晰明了。
當(dāng)你掌握了重構(gòu)及設(shè)計(jì)模式的技術(shù)之后,你寫代碼的思路會(huì)非常清晰,寫出來的代碼會(huì)非常簡潔,優(yōu)雅。
之后推薦看并發(fā)和JVM原理,并發(fā)必讀《Java高并發(fā)實(shí)戰(zhàn)》,豆瓣9分經(jīng)典。JVM原理可以看《深入理解JVM虛擬機(jī)》,這本書講解了Java虛擬機(jī)的各個(gè)分區(qū),各種GC算法,以及一些JVM的參數(shù)配置和最佳實(shí)踐,看第一遍的時(shí)候可能很吃力,但不要放棄,讀下去,前幾章看不懂的,當(dāng)你看了后幾章之后,就會(huì)豁然開朗,當(dāng)時(shí)我讀前幾章,無數(shù)次想放棄,認(rèn)為自己看不明白,但實(shí)際越往后讀,前面的就越明白。
當(dāng)這些書看完之后,其他的相信你可以根據(jù)自己所需,自己去尋找了。
以上這些書,我都有電子版,如果你需要的話,可以私信我,如果有其他問題也可以溝通,希望題主今后在技術(shù)的路上不斷精進(jìn),將自己的一些理解分享給別人~
針對完全沒有編程經(jīng)驗(yàn)的初學(xué)者,java入門沒什么特別好的書,找點(diǎn)視頻看看吧,跟著視頻敲代碼,慢慢就能看懂書了。
----------------------如果堅(jiān)持要看書的話可以考慮以下---------------------- 1. head first java 通俗易懂,重點(diǎn)突出的書,比較薄,適合初學(xué)者快速入門,缺點(diǎn)是編輯自以為幽默的加了很多不相干的段子在里面,廢話太多。 2. Java A beginner's guide by Herbert Schildt 相比head first java,沒有廢話,語言精煉。
3. 官方的tutorial 免費(fèi)的,在線閱讀的,也不錯(cuò)。 4. 瘋狂java講義 如果英文不夠好的話,可以考慮用這本書入門,中文世界里寫的比較好的 5. Introduction to java programming by Y. Daniel Liang 梁勇這本書比較厚,講算法比較多,如果你時(shí)間充足的話可以用這本書入門。
----------------------!!一定要避開這兩個(gè)大坑!!---------------------- 很多人推薦的core java 和 Thinking in java 其實(shí)并不適合初學(xué)者(沒有編程經(jīng)驗(yàn)的)。 1. core java內(nèi)容太多太雜,沒有突出重點(diǎn),并且結(jié)構(gòu)組織的像本字典,適合入門了以后用來系統(tǒng)復(fù)習(xí)。
2. Thinking in java 沒有編程經(jīng)驗(yàn)根本看不懂,過幾年再看吧,不看也沒關(guān)系。
推薦十本Android開發(fā)暢銷書籍:1. 《Android基礎(chǔ)教程》本書是一部關(guān)于 android開發(fā)的基礎(chǔ)教程,采用由淺入深、循序漸進(jìn)的方式討論android。
書中還結(jié)合數(shù)獨(dú)游戲等實(shí)例更加形象生動(dòng)地講解了 android開發(fā)的基本流程,且每章最后都有一個(gè) “快速閱讀指南 ”,更加方便了讀者的閱讀。. 本書內(nèi)容完整豐富,具有較強(qiáng)的通用性,讀者都能通過本書快速學(xué)習(xí) android開發(fā),提高相關(guān)技能。
2. 《Android應(yīng)用開發(fā)揭秘》(累計(jì)印刷6次,內(nèi)容已更新至Android 2.2,版權(quán)輸出至臺(tái)灣)這是一本參考手冊,內(nèi)容的完整性和系統(tǒng)性幾乎無可挑剔,可作為廣大Android開發(fā)者的案頭必備書;這是一部權(quán)威指南,基礎(chǔ)知識(shí)部分翔實(shí)而豐富,高級知識(shí)部分深入且飽含最佳實(shí)踐,能從本質(zhì)上提升開發(fā)者對Android的理解和開發(fā)水平。尤為值得一提的是,Android 2.0中新增了大量激動(dòng)人心的新特性,不僅支持多點(diǎn)觸摸設(shè)備、軟鍵盤,而且還支持多賬戶在線管理、藍(lán)牙……作為國內(nèi)第一本基于Android 2.0的著作,本書可謂極具前瞻性,第一時(shí)間將這些新特性完美地呈現(xiàn)給了廣大讀者。
3. 《Google Android SDK開發(fā)范例大全》(09年度暢銷榜NO.10)(臺(tái)灣天瓏書局09年超級暢銷書)本書以android手機(jī)應(yīng)用程序開發(fā)為主題,通過130多個(gè)范例全面且深度地整合了手機(jī)、網(wǎng)絡(luò)及服務(wù)等多個(gè)開發(fā)領(lǐng)域,為讀者提高程序設(shè)計(jì)功力提供了很大的幫助。. 全書共分10章,主要以范例集的方式來講述android的知識(shí)點(diǎn),詳細(xì)介紹了開發(fā)android的人機(jī)交互界面、android常用的開發(fā)控件、使用android手機(jī)收發(fā)短信等通信服務(wù)、開發(fā)android手機(jī)的自動(dòng)服務(wù)功能和娛樂多媒體功能以及整合android與aoogle強(qiáng)大的網(wǎng)絡(luò)服務(wù)等內(nèi)容,隨書光盤中包括了所有范例的程序代碼。
4. 《Google Android SDK開發(fā)范例大全(第2版)》 本書在上一版的基礎(chǔ)上,以android手機(jī)應(yīng)用程序開發(fā)(采用android sdk 2.1)為主題,通過160多個(gè)范例全面且深度地整合了手機(jī)、網(wǎng)絡(luò)及服務(wù)等多個(gè)開發(fā)領(lǐng)域,為讀者提高程序設(shè)計(jì)功力提供了很大的幫助。全書共分10章,主要以范例集的方式來講述android的知識(shí)點(diǎn),詳細(xì)介紹了開發(fā)android的人機(jī)交互界面、android常用的開發(fā)控件、使用android手機(jī)收發(fā)短信等通信服務(wù)、開發(fā)android手機(jī)的自動(dòng)服務(wù)功能和娛樂多媒體功能以及整合android與aoogle強(qiáng)大的網(wǎng)絡(luò)服務(wù)等內(nèi)容。
隨書光盤中包括了所有范例的程序代碼。本書講述由淺入深,由android的基礎(chǔ)知識(shí)到實(shí)際開發(fā)應(yīng)用,結(jié)構(gòu)清晰、語言簡潔,非常適合android的初學(xué)者和android的進(jìn)階程序開發(fā)者閱讀參考。
5. 《Android/OPhone開發(fā)完全講義》(此書版權(quán)已經(jīng)輸出到臺(tái)灣)?推薦這本書有兩個(gè)原因:一是移動(dòng)開發(fā)的廣闊前景,使得越來越多的企業(yè)、開發(fā)者投入其中。相比iPhone而言,Android平臺(tái)的開放性以及國內(nèi)市場的廣闊性,使得它更有代表性;二是作者李寧,他寫作的理論性和實(shí)踐性兼?zhèn)?,以及對技術(shù)的孜孜追求,使得這本書在Android開發(fā)的實(shí)戰(zhàn)方面很具代表性。
也希望讀者朋友和我一樣能從這本書中獲益。6. 《Android系統(tǒng)原理及開發(fā)要點(diǎn)詳解》 本書全面介紹開放的移動(dòng)電話平臺(tái)android系統(tǒng),包括android系統(tǒng)中的linux驅(qū)動(dòng)、本地框架、java框架和java應(yīng)用4個(gè)層次。
本書內(nèi)容以知識(shí)性內(nèi)容為綱,重點(diǎn)關(guān)注開發(fā)要點(diǎn),各個(gè)部分內(nèi)容注重相互照應(yīng),按照清晰的思路向讀者介紹整個(gè)android系統(tǒng)的原理和開發(fā)方法。本書按照android系統(tǒng)的框架和各個(gè)子系統(tǒng)的主線,重點(diǎn)介紹開發(fā)android應(yīng)用程序和構(gòu)建硬件抽象層。
其內(nèi)容涵蓋了android應(yīng)用程序開發(fā)和android系統(tǒng)移植構(gòu)建手機(jī)系統(tǒng)兩大方面。本書既適合從事android各個(gè)層次開發(fā)的工程師閱讀,也適合通用嵌入式linux系統(tǒng)的學(xué)習(xí)者使用。
7. 《深入淺出Google Android》(示例生動(dòng)豐富,理論和實(shí)踐完美結(jié)合)本書是國內(nèi)最早的android開發(fā)團(tuán)隊(duì)的集體智慧結(jié)晶,真正完全基于android最新的sdk 1.5,內(nèi)容詳實(shí),示例生動(dòng)豐富,包含大量示例代碼,可操作性強(qiáng)。它不僅涵蓋了android平臺(tái)從基礎(chǔ)概念到高級應(yīng)用的所有主題,而且深入淺出地介紹了幾種常見的android項(xiàng)目,具有很強(qiáng)的參考價(jià)值。
特別是在本書的第10、11章重點(diǎn)介紹了android sdk 1.5引入的最為重要的三個(gè)特性,即桌面部件、實(shí)時(shí)文件夾、虛擬鍵盤與輸入法應(yīng)用的開發(fā)方法。.. 通過本書,讀者可以迅速掌握android平臺(tái)來構(gòu)建應(yīng)用程序,成為android開發(fā)高手,躋身新技術(shù)的弄潮兒。
8. 《Google Android開發(fā)入門與實(shí)戰(zhàn)》(09年度暢銷榜TOP50)(附贈(zèng)400分鐘高清教學(xué)視頻,涵蓋5大商業(yè)案例完整源代碼)本書內(nèi)容上涵蓋了用android開發(fā)的大部分場景,從android基礎(chǔ)介紹、環(huán)境搭建、sdk介紹、market使用,到應(yīng)用剖析、組件介紹、實(shí)例演示等方面。從技術(shù)實(shí)現(xiàn)上,講解了5個(gè)android平臺(tái)下的完整綜合實(shí)例及源代碼分析,分別是rss閱讀器、基于google map的個(gè)人gps、豆瓣網(wǎng)(web 2.0)客戶端、在線音樂播放器、手機(jī)信息查看助手。
本書注重對實(shí)際動(dòng)手能力的指導(dǎo),在遵循技術(shù)研發(fā)知識(shí)體系的嚴(yán)密性同時(shí),在容易產(chǎn)生錯(cuò)誤、不易理解的環(huán)節(jié)配以了翔實(shí)的開發(fā)情景截圖,并將重要的知識(shí)點(diǎn)和開發(fā)技巧以“小實(shí)驗(yàn)”、“小提醒”、。
四大名著之《Java核心技術(shù)(第10版)》
提起Java入門必讀,四大名著是少不了的。《Java 核心技術(shù)》就是其中之一,分卷一、卷二兩冊,卷一講基礎(chǔ),卷二為進(jìn)階。全書對于Java語言的核心概念、語法、重要特性和開發(fā)方法講解地非常細(xì)致,可以說是一部有關(guān)Java的百科全書。
四大名著之《EffectiveJava中文版(第 2 版)》
“神書”、“整本書都是精華”、“內(nèi)容永不過時(shí)”、“Java 程序員必讀”……這些標(biāo)簽都是屬于《Effective Java中文版》的。
這本書不是講理論基礎(chǔ)的,而是講實(shí)戰(zhàn)的。書中介紹了78條極具實(shí)用價(jià)值的經(jīng)驗(yàn)規(guī)則,涵蓋了大多數(shù)開發(fā)人員每天所面臨的問題的解決方案,并且通過代碼例子進(jìn)一步進(jìn)行佐證,讓你知其然,也知其所以然。
哪怕不是Java程序員,也能買來看看,書中絕妙的編程觀是跨語言、跨平臺(tái)的。
四大名著之《Java 編程思想(第 4 版)》
這同樣是一本Java領(lǐng)域的經(jīng)典書籍,從Java編程的基礎(chǔ)知識(shí)點(diǎn)開始講起,慢慢深入,一直到Java的高級特性。作者用了大量通俗易懂的代碼對理論進(jìn)行佐證,讓讀者在實(shí)際操作中可以深入理解操作符、枚舉類型、接口等相關(guān)知識(shí)。
這是一本被廣大讀者評價(jià)為“不管什么時(shí)候閱讀都會(huì)有收獲”的書,不論你是否剛接觸 Java,都可以在閱讀中獲得啟迪。
《深入理解Java虛擬機(jī):JVM 高級特性與最佳實(shí)踐(第 2 版)》
用Java卻不懂JVM是說不過去的,但市面上有關(guān)JVM 的書很少,這本書更是少有的國內(nèi)講解此方面?zhèn)涫芎迷u的書,甚至可以說是JVM書籍最好的讀物之一。
本書整體內(nèi)容更偏向?qū)崙?zhàn),難易適中。從內(nèi)存管理、執(zhí)行子系統(tǒng)、程序編譯與優(yōu)化、高效并發(fā)等核心主題講解JVM。第2版根據(jù)JDK1.7進(jìn)行了內(nèi)容升級,整體上不光適合入門,而且對于已經(jīng)接觸JVM的人來說,也會(huì)常讀常新。
《Java語言程序設(shè)計(jì)(基礎(chǔ)篇)(原書第 10 版)》
這應(yīng)該是很多程序員,尤其是Java程序員倍感親切的書,因?yàn)檫@本書可以說是他們當(dāng)中很多人的入門初心。
本書從最基本的程序理論知識(shí)出發(fā),哪怕你完全沒有Java基礎(chǔ),也可以通過這本書了解Java基本的程序設(shè)計(jì)、語言結(jié)構(gòu)、面對對象程序設(shè)計(jì)等知識(shí)。書中還配了大量的代碼和課后習(xí)題,讓讀者在了解有關(guān)Java的基礎(chǔ)知識(shí)的時(shí)候,也能進(jìn)行實(shí)踐深入理解。
非常適合零基礎(chǔ)、Java 和編程愛好者來讀。
《Java 高并發(fā)編程詳解:多線程與架構(gòu)設(shè)計(jì)》
全書主要分為四個(gè)部分:第一部分主要闡述Thread的基礎(chǔ)知識(shí);第二部分引入了 ClassLoader; 第三部分詳細(xì)、深入地介紹volatile關(guān)鍵字的語義;第四部分也是最重要的一部分,站在程序架構(gòu)設(shè)計(jì)的角度深入講解了如何設(shè)計(jì)高效靈活的多線程應(yīng)用程序。
上述就是推薦的幾本學(xué)Java要看的書籍。
推薦一些JAVA入門的經(jīng)典書籍,知識(shí)點(diǎn)全面,系統(tǒng)的講述了JAVA編程1,《Head First Java》java入門書籍《Head First Java》是本完整的面向?qū)ο螅╫bject-oriented,OO)程序設(shè)計(jì)和Java的學(xué)習(xí)指導(dǎo)。
此書是根據(jù)學(xué)習(xí)理論所設(shè)計(jì)的,讓你可以從學(xué)習(xí)程序語言的基礎(chǔ)開始一直到包括線程、網(wǎng)絡(luò)與分布式程序等項(xiàng)目。最重要的,你會(huì)學(xué)會(huì)如何像個(gè)面向?qū)ο箝_發(fā)者一樣去思考。
但如果你真地想要好好地學(xué)習(xí)Java,你會(huì)需要《Head First Java》。這本書可是Amazon編輯推薦的十大好書之一!強(qiáng)烈推薦學(xué)習(xí)此書,非常適合初學(xué)者入門。
2《Java從入門到精通》適合自學(xué)者《Java從入門到精通》這本書主要針對java基礎(chǔ),對于沒有學(xué)過java的人才說,是一個(gè)不錯(cuò)的選擇。通過這本書,大家可以從零開始,慢慢來學(xué)習(xí),而且實(shí)操很多,不會(huì)讓你看到最后出現(xiàn)只會(huì)理論的情況。
為什么說培訓(xùn)的人不用看呢?因?yàn)檫@本書上的內(nèi)容和許多培訓(xùn)機(jī)構(gòu)的書籍有很多重復(fù)的地方,所以參加培訓(xùn)的同學(xué)就可以不看了。3.《Thinking in java》(中文名:《Java編程思想》)適合中級自學(xué)者和培訓(xùn)者《Java編程思想》可以說是最經(jīng)典的java著作,是所有java程序員必備教科書。
這本書不管是正在學(xué)習(xí)還是已經(jīng)工作許多年的程序員,都可以從這本書中得到你想要的東西。這本書具有教材和工具書的作用,就像一本字典,想知道什么都可以從中查詢。
雖然這本書很好,但并不建議初學(xué)者學(xué)習(xí),對于初學(xué)者難度較大。4.《瘋狂Java講義》適合自學(xué)者看《瘋狂的講義》這本書比較適合自學(xué)者,內(nèi)容比較項(xiàng)目化,實(shí)操方法很多,如果你想進(jìn)行java的深入學(xué)習(xí),不妨看看這本書。
5.《Java核心技術(shù)》最適合報(bào)培訓(xùn)班的看這本書分為兩個(gè)部分,第一個(gè)部分講的是基礎(chǔ)知識(shí),第二個(gè)部分講的是高級特性。由于內(nèi)容非常有層次,所以非常適合自學(xué)和上培訓(xùn)機(jī)構(gòu)的同學(xué)學(xué)習(xí)。
尤其對參加培訓(xùn)的同學(xué)作用較大,因?yàn)橐话闩嘤?xùn)機(jī)構(gòu)講的非???,有很多東西沒辦法及時(shí)消化吸收,很多基礎(chǔ)和核心的東西就會(huì)掌握的不牢固,那么這本書正好彌補(bǔ)了這個(gè)缺失。6.《Java開發(fā)實(shí)戰(zhàn)經(jīng)典》適合自學(xué)者看這本書比較適合自學(xué)者學(xué)習(xí),里面有很多小案例,可以邊學(xué)邊練,鞏固知識(shí)。
一、《深入理解Java虛擬機(jī):JVM高級特性與最佳實(shí)踐》,作者是周志明,這本書可以說是國內(nèi)寫得最好的有關(guān)Java虛 擬機(jī)的書籍。
二、《HotSpot實(shí)戰(zhàn)》,如果希望在Java虛擬機(jī)規(guī)范的基礎(chǔ)上更加深入地去理解虛擬機(jī)的一些細(xì)節(jié)是怎么實(shí)現(xiàn)的,就可以看一下《HotSpot實(shí)戰(zhàn)》一書,作者是陳濤。
三、《Java并發(fā)編程實(shí)戰(zhàn)》,作者是Brian Goetz
四、《java多線程編程核心技術(shù)》,《Java多線程編程核心技術(shù)》作者高洪巖。想要學(xué)習(xí)多線程,值得推薦。
聲明:本網(wǎng)站尊重并保護(hù)知識(shí)產(chǎn)權(quán),根據(jù)《信息網(wǎng)絡(luò)傳播權(quán)保護(hù)條例》,如果我們轉(zhuǎn)載的作品侵犯了您的權(quán)利,請?jiān)谝粋€(gè)月內(nèi)通知我們,我們會(huì)及時(shí)刪除。
蜀ICP備2020033479號-4 Copyright ? 2016 學(xué)習(xí)鳥. 頁面生成時(shí)間:4.626秒