1. 程式人生 > >Java的前景如何,好不好自學?

Java的前景如何,好不好自學?

工程 格式 方法 jdk 接下來 找到 流行 maven 工具

很多人都說,現在java剛學出來就可以拿到3000.4000左右的薪資,轉正的話會更多。

我想說,如果是目標是3、4000的工資,可能去培訓班培訓幾個月就能拿到了。

如果想成為專業的Java後端工程師,自學是要花需要時間和精力的。

我寫過一個Java工程師學習指南,我把它分為了四個部分,第一步是打好Java基礎,掌握Java核心技術,第二步是掌握Java Web技術棧,能夠做一些項目,第三步是掌握Java方面的進階技術,包括網絡編程、並發編程、JVM等,第四步是掌握後端進階技術,比如分布式、緩存、消息隊列等技術。

按照這樣的一個脈絡,我覺得能夠掌握這裏面的絕大部分內容,並且有過相應的一些實踐,那麽可以算是學好了Java。當然,學好Java只是一個開始,要真的幹好活,做好項目,以及其他各方面的技術工作,則是在學好Java的基礎去延伸和展開的。

接下來就是具體的文章,建議大家按順序閱讀,有點長,收藏的時候記得點贊或者評論哈。筆芯!

Java工程師學習指南:入門篇

最近有很多小夥伴來問我,Java小白如何入門,如何安排學習路線,每一步應該怎麽走比較好。原本我以為之前的幾篇文章已經可以解決大家的問題了,其實不然,因為我之前寫的文章都是站在Java後端的全局上進行思考和總結的,忽略了很多小白們的感受,而很多朋友都需要更加基礎,更加詳細的學習路線。

01 前期準備工作

開發環境搭建

這一步我們往往會直接跳過,但既然是面向小白的教程,這裏就提一下吧。首先你需要一臺電腦,然後安裝好JDK和JRE,JDK提供的是Java開發工具,也就是一些必備的jar包,JRE則是Java的運行環境組件,我們熟悉的JVM就在這裏面。

安裝好這兩個東東之後,一般還要配置一下環境變量,否則有一些目錄可能無法被正確找到。

IDE選擇和安裝
IDE指的就是本地開發編輯器,沒有了它,你就只能直接在記事本這類工具裏敲代碼了。IDE最大的好處就是整合了大量的工具和功能模塊,讓你非常輕松地完成開發。

以前大家都用eclipse,不過eclipse已經不流行了,現在我推薦你直接用intellij idea作為你的第一個代碼編輯器。如果是用過eclipse的同學,基本上也可以無痛切換。

intellij idea可以直接在官網上下載,試用版30天,如果想要永久使用,網上也有一些辦法滴。

關於jar包
jar包是什麽,其實就是將一堆class格式文件打包,Java中把它稱為jar包,這些jar包在編譯器中能被直接識別,讓開發者使用。

對於新手來說,可能只需要用到JDK自帶的一些API,但是如果你要引用外部jar包,可能就會遇到一些困難了。對於idea來說,導入外部jar包有兩種辦法,一種是手動導入jar包,一種是使用maven。後者會在Java Web相關的文章中講起。

手動導入jar包其實也不難,你需要先下載好jar包,然後在對應的項目下選擇導入jar包即可,具體的方法這裏就不展開說了,因為在網上都找得到。

02 學習Java基礎的幾種方法

了解基礎語法

學習一門語言,最開始要做的事情就是學習它的語法。我最早學習Java語法是在Runoob,這個網站可以讓你對任意一門語言完成最快速的語法入門,當然,這只是相當於你瀏覽了一遍基礎語法。

想要真正掌握Java語言基礎,光看基礎語法還遠遠不夠,我在大三第一次接觸Java課程,聽老師講面向對象三大特征聽得一頭霧水,連數組的初始化方式都理不清楚,但這些內容都是我們需要掌握的。所以,為了學好Java基礎,我們還需要看視頻或者看書進行學習。

看視頻
視頻的話,可以到B站等一些平臺聽Java基礎課程,當然也可以看我分享的Java視頻課程。大家也都知道,現在Java的培訓班非常多,基本上學的東西也都大同小異,不過它們的有些課程還不錯,大家有渠道的話也可以去看一看。

看視頻的好處是你可以更好地接收知識,同時也會耗費你更多實踐,所以,有時候你也可以選擇看書。

看書
看書的話,對於小白來說不推薦太復雜的書,比如《Java編程思想》這種書,新手千萬不要看。我個人建議,你只需要先看看《Java入門到精通》這種類型的書就足夠了,因為這個部分的學習只是為你後面的學習開個頭,你以後可能還要回過頭來重新研究這些內容。

現在市面上介紹Java基礎的書籍實在太多了,質量參差不齊,內容同質化嚴重,筆者看過的其實也不多。給大家一個建議,你只需要挑一兩本書來看即可,這裏推薦兩本最簡單的吧,《head first java》和《Java從入門到精通》。

看博客
這裏再推薦另一種學習方式,就是看博客,博客比起書籍來說,更適合對於某個技術點的學習,你可以很容易地在網上找到這個知識點相關的原理,實現方法,以及代碼範例。

我的博客裏沒有講解特別基礎的東西,如果你看一些比較基礎的文章,可以到Runoob等網站上查看。如果你有一個很明確的知識點想要學習,相信搜搜引擎會給你更好的答案。

代碼實踐
除此之外,一般的Java書籍或者視頻課程都會要求你相應完成一些練習題,這部分內容你需要自己在電腦裏使用IDE完成。

在IDE裏,你可以很好地熟悉Java語言的使用,基本代碼的實現,同時可以嘗試各種各樣的API,並且測試一些語言特性,比如繼承,封裝,多態等等。

另外,這也是你熟悉IDE的一個好機會,因為在公司裏做開發可能要用到IDE各種各樣的功能,提前熟悉好IDE絕對是有益無害的。

03 Java入門必備知識點梳理

在Java入門階段,你可能需要接觸到以下這部分知識,不管你是從通過哪種方式學習,這些內容都是你學習Java基礎時繞不過的重點。

Java基礎知識
這部分內容是你必須要掌握的內容,在入門階段你需要把這些基礎打紮實,以便於在學習後面的內容時可以更上一層樓。

如何把基礎打紮實呢,最好的辦法就是在IDE上把書上或者視頻上的每個例子都實現一遍,當然有的時候你也可以自己寫一些有意思的例子。

我做開發十多年的時間,如果大家對於學習java的學習方法,學習路線以及你不知道自己應該是自學還是培訓的疑問,都可以隨時來問我,大家可以加我的java交流學習qun: 六一五,七四一,六三六。qun內有學習教程以及開發工具。

1 基本數據類型

比如int,double,char,以及其包裝類。

熟悉基本數據類型的使用,了解每種類型所占的字節數,以及它們和包裝類之間的相互轉換。

2 流程控制

比如for循環,if else,while循環等等

如果是學過c語言的同學,這部分可以跳過了。

3 字符串類型String的使用

字符串類型是Java中很重要的類型,它不是基本數據類型,但卻很常用,熟悉和實踐String相關的api,開始你對字符串的學習吧。

4 數組

數組的初始化方式有哪些,二維數組應該怎麽寫,把數組當成方法參數又該怎麽處理?

5 類和對象

Java中最重要的兩個概念:類和對象,它們有什麽用呢,有什麽區別和聯系呢,請在代碼中實踐它們吧。


Java核心技術
對於這部分內容,我相信很多小白只能了解它們的基本使用方法,但是並不明白其背後的一些原理:比如為什麽接口和抽象類有這些區別,多態的意義是什麽,為什麽要有反射。

新手在學習這部分內容時,只需要知道怎麽用就可以了。當然,你最好把這些特性都實現一遍,以加深印象。

至於為什麽有這些特性,這些特性背後的原理是什麽,不是我們現在討論的內容,這些內容我們將在初級和中級篇中講述。因為,要了解這些原理,你得了解JVM,了解並發技術的基礎,了解網絡基礎,甚至更多。顯然,這不是你現在能做到的。

1 接口和抽象類

寫一些接口,同時寫一些實現類去實現這些接口,並且了解一下為什麽我們需要接口,為什麽子類需要實現接口裏的方法。

同理,去實現一些抽象類吧。然後,看看它和接口有什麽不同。

2 繼承,封裝和多態

如何理解繼承,子類和父類之間有什麽聯系呢。

封裝是一種保護代碼的方式,有哪些方式可以實現封裝呢。

多態一般分為重載和重寫,它們分別怎麽使用?

3 異常處理

Java中的異常處理主要用於捕獲和處理錯誤,請你寫一些try catch代碼塊去捕獲錯誤吧。

4 集合類

集合類是我們經常需要打交道的東西,List,Map,Set等等,趕快去熟悉API,然後寫一些測試例子吧。

5 IO輸入流和輸出流

IO輸入流和輸出流可以操作文件,網絡數據等內容,如何在Java代碼中完成這麽復雜的操作呢,其實只需要簡單的幾個api就可以了。

6 多線程

為了讓系統資源最合理地分配和調度,我們需要多線程,多線程會讓程序變得有趣,也會帶來很多問題,使用Thread和相關API,去嘗試這些有趣的事情吧。

可選內容:

1 反射(了解即可,不是入門必須)

2 枚舉類型和泛型(了解即可,不是入門必須)

3 網絡通信(了解基本的socket使用即可,需要網絡基礎)

4 數據庫操作(了解基本的JDBC即可,需要數據庫基礎)

04 總結

總而言之,對於一個Java小白來說,入門Java可以分為這幾步:

1 首先搭建好Java開發環境 2 通過Runoob等一些網站熟悉Java的基本語法 3 通過看書看視頻等方式熟悉Java基礎知識,通過代碼實踐加深理解 4 通過看書看視頻等方式初步了解Java核心技術,通過代碼實踐加深理解。

本文主要是為大家提供一個學習的思路,以及推薦一些學習方法,如果你能夠按照這樣的步驟去學習,並且配合上一些適合你自己的學習方法來完成學習計劃,相信你可以很好地完成對Java的入門。

Java的前景如何,好不好自學?