干貨!Java思維導(dǎo)圖,資源整合分享 !


Java思維導(dǎo)圖,文末全套視頻贈送
學(xué)習(xí)方法:
針對性
引導(dǎo)式
對比式
總結(jié)式

圖片說明

圖片說明

圖片說明

圖片說明

圖片說明

圖片說明
Java簡介: 簡單性,面向?qū)ο?分布式,健壯性,安全性,平臺獨立與可移植性,多線程,多態(tài)性等.
Java三大體系:JavaSE,JavaEE,JavaME
平臺標(biāo)準(zhǔn)版,平臺企業(yè)版,微型版.
Java開發(fā)環(huán)境配置:下載jdk,配置環(huán)境變量,JAVA_HOME設(shè)置,安裝java開發(fā)工具,CLASSPATH設(shè)置,PATH設(shè)置..
java基礎(chǔ)語法:
對象,是類的一個實例,有行為和狀態(tài)
類,是模板,用來描述一個類對象的行為和狀態(tài)
方法,是行為
實例變量,是每個對象都有一些獨特的實例變量,對象的狀態(tài)由這些實例變量的值決定
基礎(chǔ)語法:
在Java中大小寫敏感,就是說Hello和hello是不一樣的額.
類名,類名的首字母應(yīng)該是大寫
方法名,所有方法名都應(yīng)該是以小寫字母開頭
源文件名,源文件名必須和類名相同
主方法入口,所有程序通過publlic static void main(String []args)方法執(zhí)行
標(biāo)識符:類名,變量名以及方法名都被稱為標(biāo)識符
標(biāo)識符以字母,美元符號,或下劃線
關(guān)鍵字不能用作標(biāo)識符
標(biāo)識符是大小寫敏感的
修飾符分為訪問控制修飾符和非訪問控制修飾符
一,訪問,default?public?protected?private
二,非訪問,final?abstract?strictfp
變量:
局部變量, 類變量(靜態(tài)變量), 成員變量(非靜態(tài)變量)
數(shù)組,
數(shù)組是存儲在堆上的對象,可以保持多個同類型的變量
枚舉概念為,
枚舉限制變量只能是預(yù)先設(shè)定好的值,枚舉是可以用于單獨聲明或者聲明在類里面,方法,變量,構(gòu)造函數(shù)也可以在枚舉中定義.
在java中有大概50多個保留字吧,關(guān)鍵字是不能用于常量變量,和任何標(biāo)識符的名稱.
繼承是在java中,一個類可以由其他類派生的,被繼承的類為超類,派生的類為子類,利用了繼承的方法,可以重用已經(jīng)存在類的方法和屬性
接口,
是作為對象間相互通信的協(xié)議,接口是定義要用到的方法,方法的實現(xiàn)要在派生類
學(xué)習(xí)java很多吧,有:
面向?qū)ο?/p>
多態(tài)
繼承
封裝
抽象
重載
方法
實例
對象
類
面向?qū)ο?
類是描述對象的行為和狀態(tài)
對象是類的一個實例,有行為和狀態(tài)
構(gòu)造方法,新建對象時,執(zhí)行的一個特殊方法,創(chuàng)建一個對象的時候,至少要調(diào)用一個構(gòu)造方法,構(gòu)造方法的名稱要和類同名,一個類可以有多個構(gòu)造方法.
this是用來引用當(dāng)前對象,構(gòu)造方法之間的調(diào)用.
方法的重載是同名不同參.
final是用來修飾方法,變量,和類的,是最終不可以變的.
static靜態(tài), 靜態(tài)變量是類, 又叫類變量, 非靜態(tài)成員屬于實例, 靜態(tài)成員是通過類名直接調(diào)用, 而被static修飾的成員將最優(yōu)先加載到內(nèi)存里.
接口,?interface替代class?,?implements替代extends
接口中只能定義,公共的常量,抽象方法,內(nèi)部類,內(nèi)部接口.
說到抽象類,
抽象類的作用是為子類提供通用代碼,抽象類不能創(chuàng)建對象,在抽象類中,不一定有抽象方法,但是有抽象方法的類,一定是抽象類.
說到內(nèi)部類,
內(nèi)部類是定義在類的內(nèi)部,方法的內(nèi)部或者是局部代碼中的類,就是叫內(nèi)部類.
內(nèi)部類:?
靜態(tài)內(nèi)部類, 非靜態(tài)內(nèi)部類, 局部內(nèi)部類, 成員內(nèi)部類, 匿名內(nèi)部類.
面向?qū)ο蟮娜筇匦?/p>
繼承
多態(tài)
封裝
繼承的作用是代碼重復(fù)使用,單繼承,一個類只能有一個父類,一個類,可以有多個子類.在java中構(gòu)造方法不繼承,靜態(tài)成員不繼承,沒有訪問權(quán)限的成員不繼承.
多態(tài),繼承是多態(tài)的基礎(chǔ),沒有基礎(chǔ)就沒有多態(tài),繼承屬于多態(tài)的一種,子類重寫父類的方法,父類引用變量指向子類對象.
子類轉(zhuǎn)父類,將一個父類的引用指向一個子類的對象,稱為向上轉(zhuǎn)型,自動類型轉(zhuǎn)換.
封裝,封裝的好處是用來隱藏類的實現(xiàn),修改屬性的可見性來限制屬性的訪問.
Java中的程序
聲明對象,有對象名稱和對象類型,使用關(guān)鍵字new來創(chuàng)建對象,初始化對象,如Person person = new Person("dashu"),通過創(chuàng)建對象進行訪問成員變量和方法,聲明和實例化對象,訪問其中的變量和方法.
在java中,一個源文件只能有一個public類,可以有多個非public類,源文件的名稱和類名要一樣.java包,包是用來對類和接口進行分類的.
數(shù)據(jù)類型
八種基本類型,
六種數(shù)字類型,四種是整數(shù)型,兩種是浮點型, 另外的是字符類型, 還有布爾型.
類型:?byte,short,int,long,?float,double,?boolean,char
引用數(shù)據(jù)類型,在java中有對象和數(shù)組都是引用數(shù)據(jù)類型,所有引用類型的默認(rèn)值為null.
基本數(shù)據(jù)類型
自動類型轉(zhuǎn)換,低到高,byte,short,char->int->long->float->double.
強制類型轉(zhuǎn)換,高到底.
轉(zhuǎn)換:\n換行,\r回車,\b退格,\s空格等.
修飾符
修飾符是定義類,方法或是變量,java中支持4種不同的訪問權(quán)限,public可以用于當(dāng)前類,同一包內(nèi),子孫類,其他包,protected可以用于當(dāng)前類,同一包內(nèi),和子孫類,default可以用于當(dāng)前類,同一包類,private只能用于當(dāng)前類.
如果父類中聲明public的方法在子類中也必須是public,如果父類中protected的方法在子類中聲明為protected,也可以為public,不能為private.聲明為private的方法,不能被繼承.
非訪問,static修飾符,可以用來創(chuàng)建類方法和類變量.final修飾符是用來修飾類,方法,變量.final修飾的類不能被修飾,修飾的方法不能被繼承類重新定義.修飾的變量為常量是不可以被修改的.abstract用于創(chuàng)建抽象類和方法.synchronized和volatile用于線程.
運算符要點
i++是運算完加1,++1先加1,后運算.
運算符:
&都是1,結(jié)果為1,否則為0;|都是0,結(jié)果為0,否則為1;^相同的,結(jié)果為0,否則為1;~按位補運算符翻轉(zhuǎn)操作數(shù)的每一位,即0變成1,1變成了0.
循環(huán)結(jié)構(gòu)
// do...while循環(huán)和while循環(huán)相似,但是do...while循環(huán)至少會執(zhí)行一次
while(){
}
do{
}while();
for(初始化;布爾表達式;更新){
}
for(聲明語句;表達式){
}
if語句
if...else語句
if...else if...else語句
switch語句
switch語句中的變量類型為:
byte, short, int, char封裝,拆箱,抽象類,Math類,String類
StringBuffer和StringBuilder
StringBuffer的方法是線程安全的
StringBuilder相比較StringBuffer有優(yōu)勢
Integer x = 2;
x = x + 2;
抽象類Number
Integer,Long,Byte,Double,Float,Short
Math類
xxxValue(),valueOf(),parseInt(),abs(),random()
int compareTo() 進行比較兩個字符串
String concat() 將字符串連接到此字符串的結(jié)尾
boolean equals() 將字符串與指定的對象比較
int length()
String[] split()
byte[] getBytes()
int hashCode()
int indexOf()
String substring()
String trim()數(shù)組
聲明數(shù)組變量,創(chuàng)建數(shù)組,多維數(shù)組
arr[] arr = {1,3,4,5,6,7,13};
for(int ?array : arr){
}時間
Date和SimpleDateFormat
String toString()
long getTime()
int compareTo()
boolean before()
boolean after()
Date datenow = new Date();
SimpleDateFormat ft = new SimpleDateFormat("yyyy.MM.dd hh:mm:ss");
System.out.println(ft.format(datenow));流,文件,io

圖片說明
FileReader->InputStreamReader
FileWriter->OutputStreamReader// 創(chuàng)建目錄
mkdir()創(chuàng)建一個文件夾
mkdirs()
// 讀取目錄
isDirectory()判斷是否是目錄
list()列表文件
delete()方法異常處理
Throwable->Error
Throwable->Exception
try/catch
throws/throw
finally集合框架
接口 Collection Map
List 為采用線性列表的存儲方式,長度可動態(tài)改變
Map 為鍵-值對的存儲方式,長度可動態(tài)改變
具體類
List Map
List -> ArrayList LinkedList
Map -> HashMap
算法
Collections 提供了對集合實現(xiàn)遍歷等
Collection接口是最基本的容器接口
List接口 Set接口
List ->
LinkedList -> 底層數(shù)據(jù)結(jié)構(gòu)為鏈表結(jié)構(gòu),查詢慢,增刪快
ArrayList -> 底層數(shù)據(jù)結(jié)構(gòu)是數(shù)組結(jié)構(gòu),查詢快,增刪慢,線程不同步
Vector 底層是數(shù)組數(shù)據(jù)結(jié)構(gòu),線程同步,增刪改查都慢的
Set -> 不允許放入重復(fù)的元素,最多只能保護一個null
HashSet類,底層基于HashMap,不保證Set的迭代順序和永久不變
Map
HashMap TreeMap泛型
public class Test()
Test
泛型類:
public class Box{
private T t;
public void add(T t){
?this.t = t;
}
public T get() {
?return t;
}
}類型通配符:值使用
?代替具體的類型參數(shù)
多線程
多線程就是多個線程進行?,
線程為一種輕量級的進行,進程具有獨立性,動態(tài)性,并發(fā)性,進程的獨立性在于擁有獨立資源,獨立的地址,無授權(quán)其他進程無法訪問.多線程代表性,繼承Thread和實現(xiàn)Runnable接口.
線程建立,new一個Thread,然后就緒執(zhí)行start方法,開始運行,執(zhí)行run方法,然后阻塞,接著死亡.run方法進行結(jié)束,調(diào)用stop方法.開始學(xué)習(xí)框架:
要掌握框架的目的,背景,優(yōu)勢,功能,特點,看書,框架原理,做一些demo等.
項目
項目,要是什么,要掌握什么,框架用法,功能一般有前臺和后臺.需要掌握的是前端和后端.這個項目的結(jié)果,設(shè)計思想,有什么是我們要學(xué)習(xí)的,遇到的一些問題去如何實現(xiàn).
學(xué)習(xí)
javase基礎(chǔ),掌握語法基礎(chǔ),io流,多線程,反射,sql繼承,增刪改查,和學(xué)習(xí)表關(guān)聯(lián)查詢,前端學(xué)習(xí),html``css,jsp學(xué)習(xí),框架學(xué)習(xí)spring,springmvc,springBoot,mybatis等.
視頻


需要上面視頻的朋友
添加小編微信好友 cxycode666,備注:java
添加好友,還會邀請加入技術(shù)群
掃碼自動通過好友,自動回復(fù)
