您好,登錄后才能下訂單哦!
Java工程師學(xué)習(xí)指南
入門篇
最近有很多小伙伴來問我,Java小白如何入門,如何安排學(xué)習(xí)路線,每一步應(yīng)該怎么走比較好。原本我以為之前的幾篇文章已經(jīng)可以解決大家的問題了,其實(shí)不然,因?yàn)槲抑皩懙奈恼露际钦驹贘ava后端的全局上進(jìn)行思考和總結(jié)的,忽略了很多小白們的感受,而很多朋友都需要更加基礎(chǔ),更加詳細(xì)的學(xué)習(xí)路線。
所以,今天我們重新開一個(gè)新的專題,分別按照四篇文章講述Java的學(xué)習(xí)路線(分別是入門篇,初級(jí)篇,中級(jí)篇,高級(jí)篇),筆者也打算趁此機(jī)會(huì),回憶一下自己的Java學(xué)習(xí)歷程。今天我們要講的是,小白同學(xué)如何入門Java。
先聲明一點(diǎn),文章內(nèi)容不會(huì)詳細(xì)到每一步怎么操作,只會(huì)提供大致的思路和方向,給大家以啟發(fā),如果真的要一步一步指導(dǎo)操作的話,那至少需要一本書的厚度啦。
本文所述的方法不一定適合所有人,如有錯(cuò)誤敬請(qǐng)諒解。
01
前期準(zhǔn)備工作
這一步我們往往會(huì)直接跳過,但既然是面向小白的教程,這里就提一下吧。首先你需要一臺(tái)電腦,然后安裝好JDK和JRE,JDK提供的是Java開發(fā)工具,也就是一些必備的jar包,JRE則是Java的運(yùn)行環(huán)境組件,我們熟悉的JVM就在這里面。
安裝好這兩個(gè)東東之后,一般還要配置一下環(huán)境變量,否則有一些目錄可能無法被正確找到。
IDE指的就是本地開發(fā)編輯器,沒有了它,你就只能直接在記事本這類工具里敲代碼了。IDE最大的好處就是整合了大量的工具和功能模塊,讓你非常輕松地完成開發(fā)。
以前大家都用eclipse,不過eclipse已經(jīng)不流行了,現(xiàn)在我推薦你直接用intellij idea作為你的第一個(gè)代碼編輯器。如果是用過eclipse的同學(xué),基本上也可以無痛切換。
intellij idea可以直接在官網(wǎng)上下載,試用版30天,如果想要永久使用,網(wǎng)上也有一些辦法滴。
jar包是什么,其實(shí)就是將一堆class格式文件打包,Java中把它稱為jar包,這些jar包在編譯器中能被直接識(shí)別,讓開發(fā)者使用。
對(duì)于新手來說,可能只需要用到JDK自帶的一些API,但是如果你要引用外部jar包,可能就會(huì)遇到一些困難了。對(duì)于idea來說,導(dǎo)入外部jar包有兩種辦法,一種是手動(dòng)導(dǎo)入jar包,一種是使用maven。后者會(huì)在Java Web相關(guān)的文章中講起。
手動(dòng)導(dǎo)入jar包其實(shí)也不難,你需要先下載好jar包,然后在對(duì)應(yīng)的項(xiàng)目下選擇導(dǎo)入jar包即可,具體的方法這里就不展開說了,因?yàn)樵诰W(wǎng)上都找得到。
學(xué)習(xí)Java基礎(chǔ)的幾種方法
學(xué)習(xí)一門語言,最開始要做的事情就是學(xué)習(xí)它的語法。我最早學(xué)習(xí)Java語法是在Runoob,這個(gè)網(wǎng)站可以讓你對(duì)任意一門語言完成最快速的語法入門,當(dāng)然,這只是相當(dāng)于你瀏覽了一遍基礎(chǔ)語法。
想要真正掌握J(rèn)ava語言基礎(chǔ),光看基礎(chǔ)語法還遠(yuǎn)遠(yuǎn)不夠,我在大三第一次接觸Java課程,聽老師講面向?qū)ο笕筇卣髀牭靡活^霧水,連數(shù)組的初始化方式都理不清楚,但這些內(nèi)容都是我們需要掌握的。所以,為了學(xué)好Java基礎(chǔ),我們還需要看視頻或者看書進(jìn)行學(xué)習(xí)。
視頻的話,可以到極客學(xué)院或者慕課網(wǎng)聽Java基礎(chǔ)課程,當(dāng)然也可以看我分享的Java視頻課程。大家也都知道,現(xiàn)在Java的培訓(xùn)班非常多,基本上學(xué)的東西也都大同小異,不過它們的有些課程還不錯(cuò),大家有渠道的話也可以去看一看。
看視頻的好處是你可以更好地接收知識(shí),同時(shí)也會(huì)耗費(fèi)你更多實(shí)踐,所以,有時(shí)候你也可以選擇看書。
看書的話,對(duì)于小白來說不推薦太復(fù)雜的書,比如《Java編程思想》這種書,新手千萬不要看。我個(gè)人建議,你只需要先看看《Java入門到精通》這種類型的書就足夠了,因?yàn)檫@個(gè)部分的學(xué)習(xí)只是為你后面的學(xué)習(xí)開個(gè)頭,你以后可能還要回過頭來重新研究這些內(nèi)容。
現(xiàn)在市面上介紹Java基礎(chǔ)的書籍實(shí)在太多了,質(zhì)量參差不齊,內(nèi)容同質(zhì)化嚴(yán)重,筆者看過的其實(shí)也不多。給大家一個(gè)建議,你只需要挑一兩本書來看即可,這里推薦兩本最簡(jiǎn)單的吧,《head first java》和《Java從入門到精通》。
這里再推薦另一種學(xué)習(xí)方式,就是看博客,博客比起書籍來說,更適合對(duì)于某個(gè)技術(shù)點(diǎn)的學(xué)習(xí),你可以很容易地在網(wǎng)上找到這個(gè)知識(shí)點(diǎn)相關(guān)的原理,實(shí)現(xiàn)方法,以及代碼范例。
我的博客里沒有講解特別基礎(chǔ)的東西,如果你看一些比較基礎(chǔ)的文章,可以到Runoob等網(wǎng)站上查看。如果你有一個(gè)很明確的知識(shí)點(diǎn)想要學(xué)習(xí),相信搜搜引擎會(huì)給你更好的答案。
除此之外,一般的Java書籍或者視頻課程都會(huì)要求你相應(yīng)完成一些練習(xí)題,這部分內(nèi)容你需要自己在電腦里使用IDE完成。
在IDE里,你可以很好地熟悉Java語言的使用,基本代碼的實(shí)現(xiàn),同時(shí)可以嘗試各種各樣的API,并且測(cè)試一些語言特性,比如繼承,封裝,多態(tài)等等。
另外,這也是你熟悉IDE的一個(gè)好機(jī)會(huì),因?yàn)樵诠纠镒鲩_發(fā)可能要用到IDE各種各樣的功能,提前熟悉好IDE絕對(duì)是有益無害的。
Java入門必備知識(shí)點(diǎn)梳理
在Java入門階段,你可能需要接觸到以下這部分知識(shí),不管你是從通過哪種方式學(xué)習(xí),這些內(nèi)容都是你學(xué)習(xí)Java基礎(chǔ)時(shí)繞不過的重點(diǎn)。
這部分內(nèi)容是你必須要掌握的內(nèi)容,在入門階段你需要把這些基礎(chǔ)打扎實(shí),以便于在學(xué)習(xí)后面的內(nèi)容時(shí)可以更上一層樓。
如何把基礎(chǔ)打扎實(shí)呢,最好的辦法就是在IDE上把書上或者視頻上的每個(gè)例子都實(shí)現(xiàn)一遍,當(dāng)然有的時(shí)候你也可以自己寫一些有意思的例子。
1 基本數(shù)據(jù)類型
比如int,double,char,以及其包裝類。
熟悉基本數(shù)據(jù)類型的使用,了解每種類型所占的字節(jié)數(shù),以及它們和包裝類之間的相互轉(zhuǎn)換。
2 流程控制
比如for循環(huán),if else,while循環(huán)等等
如果是學(xué)過c語言的同學(xué),這部分可以跳過了。
3 字符串類型String的使用
字符串類型是Java中很重要的類型,它不是基本數(shù)據(jù)類型,但卻很常用,熟悉和實(shí)踐String相關(guān)的api,開始你對(duì)字符串的學(xué)習(xí)吧。
4 數(shù)組
數(shù)組的初始化方式有哪些,二維數(shù)組應(yīng)該怎么寫,把數(shù)組當(dāng)成方法參數(shù)又該怎么處理?
5 類和對(duì)象
Java中最重要的兩個(gè)概念:類和對(duì)象,它們有什么用呢,有什么區(qū)別和聯(lián)系呢,請(qǐng)?jiān)诖a中實(shí)踐它們吧。
對(duì)于這部分內(nèi)容,我相信很多小白只能了解它們的基本使用方法,但是并不明白其背后的一些原理:比如為什么接口和抽象類有這些區(qū)別,多態(tài)的意義是什么,為什么要有反射。
新手在學(xué)習(xí)這部分內(nèi)容時(shí),只需要知道怎么用就可以了。當(dāng)然,你最好把這些特性都實(shí)現(xiàn)一遍,以加深印象。
至于為什么有這些特性,這些特性背后的原理是什么,不是我們現(xiàn)在討論的內(nèi)容,這些內(nèi)容我們將在初級(jí)和中級(jí)篇中講述。因?yàn)?,要了解這些原理,你得了解JVM,了解并發(fā)技術(shù)的基礎(chǔ),了解網(wǎng)絡(luò)基礎(chǔ),甚至更多。顯然,這不是你現(xiàn)在能做到的。
1 接口和抽象類
寫一些接口,同時(shí)寫一些實(shí)現(xiàn)類去實(shí)現(xiàn)這些接口,并且了解一下為什么我們需要接口,為什么子類需要實(shí)現(xiàn)接口里的方法。
同理,去實(shí)現(xiàn)一些抽象類吧。然后,看看它和接口有什么不同。
2 繼承,封裝和多態(tài)
如何理解繼承,子類和父類之間有什么聯(lián)系呢。
封裝是一種保護(hù)代碼的方式,有哪些方式可以實(shí)現(xiàn)封裝呢。
多態(tài)一般分為重載和重寫,它們分別怎么使用?
3 異常處理
Java中的異常處理主要用于捕獲和處理錯(cuò)誤,請(qǐng)你寫一些try catch代碼塊去捕獲錯(cuò)誤吧。
4 集合類
集合類是我們經(jīng)常需要打交道的東西,List,Map,Set等等,趕快去熟悉API,然后寫一些測(cè)試?yán)影伞?/p>
5 IO輸入流和輸出流
IO輸入流和輸出流可以操作文件,網(wǎng)絡(luò)數(shù)據(jù)等內(nèi)容,如何在Java代碼中完成這么復(fù)雜的操作呢,其實(shí)只需要簡(jiǎn)單的幾個(gè)api就可以了。
6 多線程
為了讓系統(tǒng)資源最合理地分配和調(diào)度,我們需要多線程,多線程會(huì)讓程序變得有趣,也會(huì)帶來很多問題,使用Thread和相關(guān)API,去嘗試這些有趣的事情吧。
可選內(nèi)容:
1 反射(了解即可,不是入門必須)
2 枚舉類型和泛型(了解即可,不是入門必須)
3 網(wǎng)絡(luò)通信(了解基本的socket使用即可,需要網(wǎng)絡(luò)基礎(chǔ))
4 數(shù)據(jù)庫操作(了解基本的JDBC即可,需要數(shù)據(jù)庫基礎(chǔ))
總結(jié)
1 首先搭建好Java開發(fā)環(huán)境
2 通過Runoob等一些網(wǎng)站熟悉Java的基本語法
3 通過看書看視頻等方式熟悉Java基礎(chǔ)知識(shí),通過代碼實(shí)踐加深理解
4 通過看書看視頻等方式初步了解Java核心技術(shù),通過代碼實(shí)踐加深理解。
本文主要是為大家提供一個(gè)學(xué)習(xí)的思路,以及推薦一些學(xué)習(xí)方法,如果你能夠按照這樣的步驟去學(xué)習(xí),并且配合上一些適合你自己的學(xué)習(xí)方法來完成學(xué)習(xí)計(jì)劃,相信你可以很好地完成對(duì)Java的入門。
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。