1、12年時(shí)間打磨,緊跟市場需求的JAVA課程,改版次數(shù)119次,新版本:v.13.2
2、引入新技術(shù):JAVA10、微服務(wù)架構(gòu)(Spring Boot、Spring Data、Spring Cloud)、互聯(lián)網(wǎng)架構(gòu)技術(shù)、SSM三大框架等,時(shí)時(shí)與企業(yè)使用的技術(shù)保持同步。3、項(xiàng)目進(jìn)行更迭,能完整消化尚學(xué)堂項(xiàng)目的學(xué)員,年薪可達(dá)20萬以上,等于5年以上開發(fā)經(jīng)驗(yàn)。
4、新版課程實(shí)驗(yàn)階段,優(yōu)秀學(xué)員離畢業(yè)還有兩周,就拿到了20K的offer。
說明:尚學(xué)堂的JAVA課程繼續(xù)緊跟市場需求及時(shí)更新。
2、不好好學(xué)習(xí)真的會(huì)被勸退或開除!
3、分組實(shí)戰(zhàn)項(xiàng)目開發(fā),鍛煉協(xié)作能力。
4、“戰(zhàn)狼杯”項(xiàng)目比賽,鍛煉獨(dú)立開發(fā)項(xiàng)目能力
JavaSE課程體系
階段名稱 | 技術(shù)名稱 | 技術(shù)內(nèi)容 | 學(xué)習(xí)目標(biāo) |
---|---|---|---|
JavaSE | Java語言概述 |
1)Java編程語言發(fā)展簡史
2)Java編程語言主要特征
3)Java技術(shù)體系以及平臺(tái)介紹
4)Java核心機(jī)制與JVM運(yùn)行原理
5)搭建Java開發(fā)環(huán)境
6)JDK的安裝與配置
7)開發(fā)個(gè)Java程序
8)Java程序的執(zhí)行原理
9)字節(jié)碼反編譯(jd-gui.exe和javap)
10)變量的聲明與使用
11)變量內(nèi)存空間分配與原理
12)進(jìn)制轉(zhuǎn)換與位運(yùn)算
13)八大基本數(shù)據(jù)類型
14)基本數(shù)據(jù)類型之間的轉(zhuǎn)換
15)變量的運(yùn)算與底層運(yùn)算原理
16)常見面試題講解
|
1.了解Java語言的一個(gè)發(fā)展史 2.掌握手動(dòng)安裝JDK,配置環(huán)境變量 3.掌握個(gè)java程序(HelloWorld.java) 4.掌握javac.exe以及java.exe命令的含義 5.掌握變量的作用和定義的方式 6.能根據(jù)實(shí)際情況選擇使用8種基本數(shù)據(jù)類型 7.掌握常見的轉(zhuǎn)義字符和字符集相關(guān)的知識(shí) 8.掌握數(shù)據(jù)類型之間的互相轉(zhuǎn)換(強(qiáng)制轉(zhuǎn)換和自動(dòng)轉(zhuǎn)換) |
桌球游戲項(xiàng)目 | 根據(jù)項(xiàng)目截圖,完成桌球游戲開發(fā)。目標(biāo):書寫代碼,增強(qiáng)學(xué)生寫代碼的速度,掌握J(rèn)ava代碼基本結(jié)構(gòu),找到感覺,增強(qiáng)自信心。如果在敲代碼的過程中發(fā)生錯(cuò)誤,學(xué)生能夠根據(jù)提示的錯(cuò)誤,來分析、調(diào)試從而解決問題(要求學(xué)生理解代碼的語法功能,只要按照代碼結(jié)構(gòu)輸入代碼,能夠經(jīng)過調(diào)試實(shí)現(xiàn)代碼的正常運(yùn)行即可)。 | ||
流程控制 |
1)Java代碼的執(zhí)行流程介紹
2)if選擇結(jié)構(gòu)
3)Scanner鍵盤錄入
4)switch選擇結(jié)構(gòu)
5)使用Random生成隨機(jī)數(shù)
6)while循環(huán)結(jié)構(gòu)
7)do-while循環(huán)結(jié)構(gòu)
8)for循環(huán)結(jié)構(gòu)及執(zhí)行順序
9)跳轉(zhuǎn)語句:break、continue、return
10)多重循環(huán)及指定跳出循環(huán)
11)方法的聲明與使用
12)方法調(diào)用的內(nèi)存分析
13)方法重載Overload
|
1.掌握if語句和switch語句的區(qū)別和使用場合 2.掌握基本的Scanner鍵盤錄入數(shù)據(jù)和生成隨機(jī)數(shù) 3.掌握break在switch中的用法以及default語句 4.掌握三種循環(huán)的書寫格式以及執(zhí)行順序 5.掌握while和do-while的區(qū)別,了解for和while的特點(diǎn) 6.掌握break和continue關(guān)鍵字,了解return的作用 7.掌握嵌套循環(huán)的使用,掌握流程控制中常見的一些算法 8.了解死循環(huán)和不可達(dá)語句 9.掌握方法的聲明與使用,以及調(diào)用方法時(shí)的內(nèi)存分析 10.掌握方法的重載Overload和使用場合 |
|
萬年歷項(xiàng)目 | 輸入年份和月份,顯示本月的日歷(本日歷是從1900年開始)。因?yàn)?900年1月1日為星期一,所以先計(jì)算從1900年到輸入本月份之前的總天數(shù)和本月的總天數(shù),然后計(jì)算本月中的1號(hào)為星期幾,最后再控制臺(tái)打印本月的日歷。目標(biāo):以面向過程的思維來解決問題,鞏固變量、運(yùn)算符、if、switch、循環(huán)和方法的使用,讓學(xué)生做出效果,把所學(xué)知識(shí)用于實(shí)戰(zhàn),提高學(xué)生的自信心。 | ||
數(shù)組 |
1)數(shù)組的創(chuàng)建與使用
2)一維數(shù)組與多維數(shù)組
3)數(shù)組的默認(rèn)初始化與內(nèi)存分析圖
4)數(shù)組作為方法形參傳遞
5)數(shù)組的遍歷操作
6)數(shù)組的常見算法分析
7)操作數(shù)組的工具類Arrays
8)理解main方法(args)
9)方法的可變參數(shù)詳解
10)使用jar命令打應(yīng)用程序
11)數(shù)組數(shù)據(jù)結(jié)構(gòu)的優(yōu)勢(shì)和劣勢(shì)分析
12)常見的數(shù)組面試題講解
|
1.掌握一維數(shù)組的使用和內(nèi)存結(jié)構(gòu)分析 2.掌握數(shù)組的遍歷方式:普通for循環(huán)和for-each循環(huán) 3.掌握數(shù)組的添加、插入、刪除和擴(kuò)容操作 4.掌握數(shù)組的常見算法:冒泡排序、插入排序和二分法查找等 5.掌握Arrays工具類提供的常見方法 6.了解main方法實(shí)參傳遞和方法的可變參數(shù)使用 7.掌握二維數(shù)組的定義和內(nèi)存結(jié)構(gòu)分析 8.了解數(shù)組數(shù)據(jù)結(jié)構(gòu)的優(yōu)勢(shì)和劣勢(shì) |
|
雙色球項(xiàng)目 | 利用一維數(shù)組模擬雙色球購買以及開獎(jiǎng)的一系列過程。目標(biāo):能夠?qū)崿F(xiàn)手選,機(jī)選雙色球,根據(jù)開獎(jiǎng)結(jié)果比對(duì)所選的雙色球號(hào)碼,作為中獎(jiǎng)的條件,來實(shí)現(xiàn)雙色球項(xiàng)目。需要重點(diǎn)掌握數(shù)組的添加、刪除和擴(kuò)容操作,以及控制語句的邏輯思維。 | ||
面向?qū)ο缶幊?基礎(chǔ)) |
1)面向過程和面向?qū)ο髤^(qū)別
2)類和對(duì)象的概述
3)類的屬性和方法
4)構(gòu)造方法(Construtor)
5)創(chuàng)建對(duì)象內(nèi)存分析
6)DataType數(shù)據(jù)類型傳遞
7)this關(guān)鍵字詳解
8)static關(guān)鍵字詳解
9)局部代碼塊、構(gòu)造代碼塊和靜態(tài)代碼塊10)package和import詳解 11)Eclipse中的debug調(diào)試 |
1.了解面向?qū)ο蠛兔嫦蜻^程編程思想的區(qū)別 2.了解類和對(duì)象的概念,以及兩者之間的關(guān)系 3.掌握構(gòu)造方法的語法、特點(diǎn)及構(gòu)造方法重載 4.掌握對(duì)象的創(chuàng)建過程和內(nèi)存分析 5.掌握成員變量和局部變量區(qū)別 6.掌握基本數(shù)據(jù)類型傳遞和引用數(shù)據(jù)類型傳遞的區(qū)別 7.掌握this的本質(zhì),掌握static修飾屬性和方法的作用 8.掌握局部代碼塊、構(gòu)造代碼塊和靜態(tài)代碼塊的的執(zhí)行和作用 9.了解的概念及好處,了解導(dǎo)的概念 |
|
圖書管理系統(tǒng) | 本項(xiàng)目模擬實(shí)現(xiàn)一個(gè)基于控制臺(tái)界面的《圖書管理系統(tǒng)》,目標(biāo):能夠通過對(duì)圖書以及用戶的操作,實(shí)現(xiàn)用戶管理以及圖書管理。使用對(duì)象數(shù)組類存儲(chǔ)數(shù)據(jù),需要重點(diǎn)掌握類與對(duì)象的關(guān)系,以及類中各個(gè)方法的調(diào)用,逐漸建立起一個(gè)面向?qū)ο蟮乃枷?,為后面的面向?qū)ο笾R(shí)打好基礎(chǔ)。 | ||
面向?qū)ο缶幊?進(jìn)階) |
1)面向?qū)ο蟮娜筇匦?
2)面向?qū)ο笾?-封裝(Encapsulation)
3)訪問權(quán)限修飾符
4)set和get方法
5)JavaDoc生成API文檔
6)面向?qū)ο笾?-繼承(Inheritance)
7)方法重寫Override
8)super關(guān)鍵字詳解
9)繼承中對(duì)象創(chuàng)建的內(nèi)存分析
10)final關(guān)鍵字詳解
11)Object類詳解
12)面向?qū)ο笾?-多態(tài)(Polymorphism)
13)向上轉(zhuǎn)型和向下轉(zhuǎn)型
14)instanceof運(yùn)算符
15)編譯時(shí)和運(yùn)行時(shí)詳解
16)抽象類和抽象方法(abstract)
17)接口的定義和實(shí)現(xiàn)
18)接口和抽象類的區(qū)別
19)接口應(yīng)用:內(nèi)部比較器Comparable
20)接口應(yīng)用:外部比較器Comparator
21)內(nèi)部類詳解
22)Java的內(nèi)存管理與垃圾回收
|
1.了解封裝的好處和javaBean的規(guī)范,掌握四種訪問權(quán)限 2.掌握通過Eclipse中的JavaDoc生成API文檔 3.了解繼承的好處,掌握繼承的實(shí)現(xiàn)和使用的要點(diǎn) 4.掌握重寫的意義和規(guī)范,區(qū)分重寫和重載 5.了解繼承和組合所表述的關(guān)系,合理的使用繼承和組合 6.掌握繼承體系下對(duì)象的創(chuàng)建過程和內(nèi)存分析 7.掌握super關(guān)鍵字的使用,以及super和this的區(qū)別 8.掌握final關(guān)鍵字的使用和Object類中的常見方法 9.掌握多態(tài)的原理、發(fā)生多態(tài)的條件和多態(tài)的使用場合 10.掌握向下轉(zhuǎn)型和向上轉(zhuǎn)型,以及instanceof運(yùn)算符的使用 11.掌握抽象類和抽象方法的特點(diǎn)和使用 12.掌握接口的定義和實(shí)現(xiàn),以及接口和抽象類的區(qū)別 13.了解面向接口編程思想,掌握比較器的運(yùn)用 14.了解內(nèi)部類的定義和特點(diǎn) 15.了解java的內(nèi)存管理和垃圾回收機(jī)制 |
|
七彩鮮花銷售系統(tǒng) | 使用面向?qū)ο蟮乃季S方式,實(shí)現(xiàn)對(duì)鮮花的展示和銷售功能。首先模擬實(shí)現(xiàn)一個(gè)ArrayList容器,用于存儲(chǔ)庫存中的鮮花和購物車中的鮮花,然后完成功能面板的展示及功能選擇(添加購物車功能、查詢訂單的功能、修改訂單的功能和刪除訂單的功能)。所用技能:面向?qū)ο蟮姆庋b、繼承、多態(tài)和接口,靈活的使用構(gòu)造方法和靜態(tài)方法。 | ||
異常機(jī)制 |
1)異常的概述
2)異常的繼承體系
3)Error錯(cuò)誤類
4)運(yùn)行時(shí)異常和編譯異常
5)異常的原理分析
6)try-catch-finally捕捉異常
7)throw拋出異常
8)throws聲明異常
9)自定義異常
10)異常鏈
|
1.了解異常的結(jié)構(gòu)體系和分類(Error和Exception) 2.了解Error錯(cuò)誤類,以及常見的Error錯(cuò)誤 3.掌握Exception分類:運(yùn)行時(shí)異常和編譯時(shí)異常 4.掌握異常的產(chǎn)生過程原理和throw拋出異常 5.掌握異常的兩種處理方式:聲明異常和捕捉異常 6.掌握自定義異常類的定義和使用 7.了解異常鏈的定義和使用 |
|
Java常用類 |
1)Wrapper裝類
2)自動(dòng)裝箱和自動(dòng)拆箱
3)裝類的緩存分析
4)字符串處理類
5)java.lang.String類的使用與內(nèi)存原理
6)String類的算法分析
7)StringBuffer與StringBuilder
8)字符串處理類性能分析
9)新日期API
10)java.lang.System類
9)java.util.Date類
10)java.text.SimpleDateFormat類
11)java.util.Calendar類
12)java.lang.Math類
13)BigInteger類和BigDecimal類
14)常見的面試題講解與分析
|
1.掌握java的八種基本數(shù)據(jù)類型的裝類 2.掌握其他的一些常用的類,尤其是String類的方法 3.掌握Stringbuffer和StringBuilder的常用方法 4.掌握Stringbuffer和Stringbuilder的區(qū)別和聯(lián)系 5.掌握日期類和字符串類的轉(zhuǎn)換方式 6.掌握日期和日歷類的轉(zhuǎn)換方式 7.了解數(shù)學(xué)類好系統(tǒng)類的基本用法 8.了解BigInteger類和BigDecimal類的基本用法 |
|
開發(fā)人員調(diào)度項(xiàng)目 | 模擬實(shí)現(xiàn)一個(gè)基于文本界面的《開發(fā)人員調(diào)度軟件》熟悉Java面向?qū)ο蟮母呒?jí)特性,進(jìn)一步掌握編程技巧和調(diào)試技巧,根據(jù)菜單提示,基于現(xiàn)有的公司成員,組建一個(gè)開發(fā)團(tuán)隊(duì)以開發(fā)一個(gè)新的項(xiàng)目,組建過程括將成員插入到團(tuán)隊(duì)中,或從團(tuán)隊(duì)中刪除某成員,還可以列出團(tuán)隊(duì)中現(xiàn)在成員的列表,需要掌握的知識(shí)點(diǎn):類的繼承和多態(tài) 對(duì)象的關(guān)聯(lián)、特殊類的使用enum,以及異常。最終運(yùn)行代碼,實(shí)現(xiàn)效果 | ||
集合(容器) |
1)集合和數(shù)組的聯(lián)系和區(qū)別
2)Collection框架(Set接口&List接口)
3)java.util.ArrayList源碼與數(shù)據(jù)結(jié)構(gòu)分析
4)java.util.LinkedList源碼分析
5)java.util.HashSet內(nèi)部原理
6)java.util.TreeSet數(shù)據(jù)結(jié)構(gòu)分析
7)java7中Map系列集合與數(shù)據(jù)結(jié)構(gòu)分析
8)Iterator與ListIterator講解
9)java.util.Collections工具類
10)集合中使用泛型
11)自定義泛型
12)泛型通配符
13)ArrayList、LinkedList、Vector的區(qū)別和聯(lián)系14)HashMap和Hashtable的區(qū)別和聯(lián)系 15)使用集合實(shí)現(xiàn)商品和購物車 16)集合選擇依據(jù) |
1.了解容器的概念和體系結(jié)構(gòu) 2.掌握Collection接口的基本用法 3.掌握List接口以及List接口子類的底層數(shù)據(jù)結(jié)構(gòu) 4.掌握Set接口以及Set接口子類的的底層數(shù)據(jù)結(jié)構(gòu) 5.掌握Map接口的基本用法 6.掌握HashMap的基本用法以及底層數(shù)據(jù)結(jié)構(gòu) 7.掌握TreeMap的基本用法以及底層數(shù)據(jù)結(jié)構(gòu) 8.掌握數(shù)組、鏈表、哈希表和二叉樹的優(yōu)缺點(diǎn) 9.掌握Iterator迭代器的迭代過程 10.掌握泛型在集合中的用法 11.掌握集合在實(shí)際開發(fā)中的選擇依據(jù) |
|
京東商城項(xiàng)目 | 本項(xiàng)目基于java控制臺(tái)來模擬實(shí)現(xiàn)京東商城購物系統(tǒng)。重點(diǎn)掌握集合的基本操作,例如,對(duì)商品的添加、修改、刪除、以及查詢。逐漸讓學(xué)生能夠建立起一套比較完善的項(xiàng)目體系架構(gòu),再將這些具體的操作融入到面向?qū)ο蟮乃枷胫?,結(jié)合接口編程,形成分層模塊的雛形。最終運(yùn)行代碼,展示效果。 | ||
IO流 |
1)IO流的概念
2)IO流的分類及其原理分析
3)文件流InputStream、OutputStream
6)打印流PrintWriter
9)序列化和反序列化
11)Properties讀寫屬性文件
12)編碼和解碼
13)使用IO流復(fù)制文件夾
14)使用IO完成商品的添加和查詢
15)文件的切割和合并
|
1.了解IO流的概念以及底層原理分析 2.掌握字節(jié)流和字符流的具體用法 3.掌握對(duì)象序列化和反序列化的實(shí)現(xiàn)和原理 4.了解其它IO流的基本用法 5.掌握流對(duì)于數(shù)據(jù)的編碼和解碼的過程 6.掌握通過IO流實(shí)現(xiàn)對(duì)文件的拷貝 7.掌握文件存取過程中的編碼和解碼問題 8.掌握Properties類對(duì)文件的讀寫操作 9.了解文件的切割和合并的原理 |
|
超市會(huì)員管理系統(tǒng) | 本項(xiàng)目基于java控制臺(tái)來模擬實(shí)現(xiàn)超市會(huì)員管理系統(tǒng)。重點(diǎn)掌握對(duì)超市會(huì)員的基本管理,例如:對(duì)會(huì)員的增刪改查操作,最后再將Java中的這些對(duì)象數(shù)據(jù)保存在文件中,來實(shí)現(xiàn)對(duì)數(shù)據(jù)的持久化,提前讓學(xué)生感受數(shù)據(jù)持久化對(duì)項(xiàng)目帶來的好處,最后運(yùn)行代碼,展示效果。 | ||
多線程 |
1)線程的原理
2)線程的創(chuàng)建與啟動(dòng)
3)創(chuàng)建線程的幾種方式對(duì)比
4)線程控制
5)線程的調(diào)度
6)線程的優(yōu)先級(jí)
7)線程的生命周期
8)多線程的安全問題與解決辦法
9)線程的同步
10)互斥鎖
11)線程的死鎖問題
12)線程通信
|
1.掌握多線程2種創(chuàng)建方式 2.掌握多線程的基本調(diào)度方法 3.掌握多線程的優(yōu)先級(jí) 4.掌握多線程的聲明周期 5.掌握同步的幾種實(shí)現(xiàn)方式 6.了解死鎖的概念 7.掌握線程同步在實(shí)際開發(fā)中的用途 8.掌握線程通信中的wait以及notify |
|
網(wǎng)絡(luò)編程 |
1)網(wǎng)絡(luò)編程基礎(chǔ)知識(shí)
2)網(wǎng)絡(luò)編程的三要素
3)如何實(shí)現(xiàn)網(wǎng)絡(luò)中主機(jī)的相互通訊
4)OSI參考模型
5)TCP/IP參考模型(或TCP/IP協(xié)議)
6)數(shù)據(jù)的封裝與拆封原理解析
7)TCP協(xié)議與UDP協(xié)議
8)基于TCP協(xié)議的網(wǎng)絡(luò)編程
9)Socket的TCP編程
10)基于UDP協(xié)議的網(wǎng)絡(luò)編程
11)基于UDP編程的聊天室系統(tǒng)
12)基于TCP編程的登錄響應(yīng)系統(tǒng)
|
1.了解網(wǎng)絡(luò)編程基礎(chǔ)知識(shí) 2.掌握網(wǎng)絡(luò)編程三要素ip+端口+協(xié)議利用 3.了解OSI的七層參考模型 4.掌握數(shù)據(jù)的封裝金額拆分原理 5.掌握UDP協(xié)議,做一個(gè)局域網(wǎng)的聊天室 6.掌握TCP協(xié)議,寫出服務(wù)器客戶端的上傳和下載功能 |
|
聊天室系統(tǒng) | 本項(xiàng)目基于多線程以及網(wǎng)絡(luò)編程來模擬實(shí)現(xiàn)QQ聊天系統(tǒng)。重點(diǎn)掌握多線程的調(diào)度,以及網(wǎng)絡(luò)編程對(duì)不同客戶的基本操作。實(shí)現(xiàn)客戶發(fā)出請(qǐng)求,服務(wù)器給出響應(yīng)的雙向操作,讓學(xué)生能夠?qū)竺娴腤eb項(xiàng)目有一個(gè)初步的了解。最終運(yùn)行代碼,實(shí)現(xiàn)用戶之間的及時(shí)通信! | ||
XML&正則表達(dá)式 |
1)XML定義和概述
2)XML特點(diǎn)和優(yōu)勢(shì)
3)XML驗(yàn)證和DTD驗(yàn)證
4)使用DOM解析XML
5)使用DOM4j解析XML
6)了解正則表達(dá)式的使用
7)熟悉正則表達(dá)式的規(guī)則
8)使用Java處理正則
|
1.熟練的寫出XML文件中的內(nèi)容 2.了解DOM解析的概念 3.掌握通過DOM4J來解析XML文件 4.了解正則的規(guī)則 5.掌握J(rèn)ava處理正則和String中使用正則 |
|
反射技術(shù) |
1)Java反射機(jī)制的研究與應(yīng)用
2)反射的原理分析
3)JVM與類
4)類的加載、連接、初始化
5)類加載機(jī)制
6)開啟反射的源頭Class
7)獲取Class實(shí)例的幾種方式比較
8)從Class中獲取類的結(jié)構(gòu)信息
9)獲取Constructor、Field和Method
10)泛型和Class類
|
1.了解反射的運(yùn)行原理以及概念 2.掌握Class類對(duì)象的實(shí)現(xiàn)方式 3.掌握Class類的常用方法 4.掌握Constructor、Method、Field類的用法 5.了解泛型在反射中的用途 6.掌握模擬反射實(shí)現(xiàn)Servlet的基本過程 |
|
設(shè)計(jì)模式 |
1)創(chuàng)建型模式(共五種):工廠方法模式、抽象工廠模式、單例模式、建造者模式、原型模式 2)結(jié)構(gòu)型模式(共七種):適配器模式、裝飾器模式、代理模式、外觀模式、橋接模式、組合模式、享元模式 3)行為型模式(共十一種):策略模式、模板方法模式、觀察者模式、迭代子模式、責(zé)任鏈模式、命令模式、備忘錄模式、狀態(tài)模式、訪問者模式、中介者模式、解釋器模式 |
1.了解設(shè)計(jì)模式在實(shí)際開發(fā)中的應(yīng)用思想 2.掌握工廠模式、適配器模式、單例模式、裝飾者模式等 |