(后續(xù)還會更新完善)
目錄
java基礎(chǔ)編程
一、基礎(chǔ)語法
1、標(biāo)識符
2、關(guān)鍵字
3、變量、常量和作用域
4、數(shù)據(jù)類型及類型轉(zhuǎn)換
5、運算符和表達(dá)式
6、流程控制語句
二、數(shù)組
1、一維數(shù)組
2、二維數(shù)組
3、數(shù)組元素查找
4、數(shù)組元素排序
三、面向?qū)ο?/p>
四、異常
java高級編程
五、多線程
六、常用類
七、枚舉、注解
八、集合
九、泛型和file
十、IO流
十一、網(wǎng)絡(luò)編程
十二、反射
十三、常見面試題
java基礎(chǔ)編程
一、基礎(chǔ)語法 1、標(biāo)識符 1.1 定義1.2 規(guī)則?
- 對變量、方法和類等要素命名時使用的?字符序列,(自己可以起名字的地方放就叫標(biāo)識符)
1.3 規(guī)范
- 構(gòu)成:26個英文字母大小寫 、0 - 9數(shù)字、_ 或 $?
- 禁止使用:數(shù)字開頭、含有空格、使用關(guān)鍵字或保留字
- 區(qū)分大小寫,長度無限制
1.4 標(biāo)識符舉例?
- 包名:字母全部小寫,一般格式為? 【前綴.發(fā)起者名.項目名.模塊名】
- 類名、接口名:大駝峰命名形式;一個單詞?首字母必須大寫;多個單詞?每個單詞的首字母必須大寫
- 變量名、方法名:小駝峰命名形式;一個單詞全部小寫;多個單詞第一個單詞全部小寫,其他單詞的首字母大寫
- 常量名:所有字母大寫;多個單詞用 下劃線 _ 隔開
- 注意點:為提高閱讀性,命名時盡量做到“見名起意”
//包名
package org.springframework.boot.util
//類名(一個單詞)
class Student{}
//類名(多個單詞)
class SmartStudentTest{}
//接口名(一個單詞)
interface Study{}
//接口名(多個單詞)
interface GoodStudyTest{}
//變量名(一個單詞)
int id;
//變量名(多個單詞)
int orderId;
//方法名(一個單詞)
void insert(){}
//方法名(多個單詞)
void clearAllName(){}
//常量名(一個單詞)
public static final int NUMBER = 120;
//常量名(多個單詞)
public static final String LOGIN_USER_SESSION_KEY = "current_login_user";
2、關(guān)鍵字
?1.1 定義1.2 特點
- java中用以特殊用途而預(yù)先占用的單詞或標(biāo)識符稱之為關(guān)鍵字
1.3 常用關(guān)鍵字及其分類?
- 全部為小寫?
3、變量、常量和作用域 3.1 變量???
- goto、const,注意(自己命名時要避開使用保留字),不常用?
變量是程序中最基本的存儲單元,由作用域、變量類型、變量名組成,每個變量在使用前必須提前聲明。
//聲明格式【1】 數(shù)據(jù)類型 變量名稱;
int abs;//無初始化
//聲明格式【2】 數(shù)據(jù)類型 變量名稱 = 值;
int ats = 5; //顯示初始化
變量分為局部變量、成員變量,成員變量又以是否被static關(guān)鍵字修飾分為實例變量(屬性)和類變量(靜態(tài)屬性)
局部變量? ? ? ?????????
【聲明格式】:變量類型 變量名稱 = 變量值;
【聲明位置】:? 1.方法或構(gòu)造器的形參中
2.方法內(nèi)部
3.代碼塊內(nèi)部
【作用范圍】:1.方法或構(gòu)造器的形參中:在方法體和構(gòu)造器內(nèi)部任何位置都可以使用
2.方法內(nèi)部、代碼塊內(nèi)部:從定義的地方開始到方法體或代碼塊結(jié)束
【生命周期】 :出生——運行到創(chuàng)建變量語句時
?????????????? 死亡——超過其作用范圍? ?
實例變量 (屬性)
【聲明格式】:訪問修飾符 變量類型 變量名稱 = 變量值;
【聲明位置】: 方法體外、類體內(nèi)
【作用范圍】:在類內(nèi)部,任何地方都可以訪問成員變量
【生命周期】 :出生——new對象的時候,開辟內(nèi)存空間
???????????????死亡——堆內(nèi)存地址沒有引用,變成垃圾,被垃圾回收器回收后
【特點】:? ?1. new的時候占據(jù)內(nèi)存,實例化后才能調(diào)用。
???????????????????2. 非靜態(tài)變量賦值不發(fā)生沖突。【調(diào)用格式】: 先實例化對象,再使用對象名訪問
???????????????????????范例: ? Student stu1=new Student(); //實例化對象
? stu1.school="北大";? ? ? ? //對象.屬性
3.2常量?類變量(靜態(tài)屬性)
【聲明格式】:訪問修飾符 static 變量類型 變量名稱 = 變量值;
【聲明位置】: 方法體外、類體內(nèi)
【作用范圍】:在類變量定義之后
【生命周期】 :出生——類加載時,類變量就分配內(nèi)存空間
死亡——JVM退出。
【特點】:? ?1. 一聲明就被存儲在棧中,直接占據(jù)內(nèi)存,可以快速穩(wěn)定的調(diào)用。
2. 全局唯一,在一個運行環(huán)境中,靜態(tài)變量只有一個值,任何一次修改都是全局性的影響。
???3. 占據(jù)內(nèi)存,程序中應(yīng)該包含盡量少的static【調(diào)用格式】:1: ?使用類名訪問(推薦)
????????????????????????? 范例: ? Student.school="清華";
????????????????????2: ?使用對象名訪問(不推薦)
???????????????????????范例: ? Student stu1=new Student();
? stu1.school="北大";
常量也可稱為字面值,即字面顯示的值,其本身不會發(fā)生變化。 一般用final關(guān)鍵字修飾,分為靜態(tài)常量、成員常量、局部常量
public class HelloWorld {
// 靜態(tài)常量
public static final double PI = 3.14;
// 聲明成員常量
final int y = 10;
public static void main(String[] args) {
// 聲明局部常量
final double x = 3.3;
}
}
3.3變量與常量的區(qū)別4、數(shù)據(jù)類型及類型轉(zhuǎn)換? 4.1 數(shù)據(jù)類型
- 命名規(guī)范不一樣。默認(rèn)常量為全大寫,而變量為駝峰;
- 修飾符不同。一般常量都會用final修飾,變量不會。而且常量會同時使用static修飾,這是為了要節(jié)省內(nèi)存;
- 常量是指值不會改變(也不能改變)的變量。
八種基本數(shù)據(jù)類型中,布爾類型(boolen)不參與數(shù)據(jù)類型轉(zhuǎn)換。
4.2 自動類型轉(zhuǎn)換
- 定義
將數(shù)據(jù)范圍小的數(shù)據(jù)類型可以直接轉(zhuǎn)換為數(shù)據(jù)范圍大的數(shù)據(jù)類型的方式叫做自動類型轉(zhuǎn)換
七種基本數(shù)據(jù)類型(除boolean類型)范圍從小到大排序:
byte /?short /?char ——>int ——>long ——>float ——>double?
(byte、short、char這三種類型平級,不能自動類型互轉(zhuǎn),一般轉(zhuǎn)為int類型計算)
4.3 強制類型轉(zhuǎn)換
- 舉例
//byte轉(zhuǎn)為int byte a = 15; int b = a; System.out.println(b);//15 //short轉(zhuǎn)為int short c = 16; int d = c; System.out.println(d);//16 //char轉(zhuǎn)為int char e = 'a'; int f = e; System.out.println(f);//97 //int轉(zhuǎn)為long int g = 133; long h = g; System.out.println(g);//133 //long轉(zhuǎn)為float long i = 4555L; float j = i; System.out.println(j);//4555.0 //float轉(zhuǎn)為double float k = 4.553f; double l =k; System.out.println(l);//4.552999973297119
- 定義
將數(shù)據(jù)范圍大的數(shù)據(jù)類型強行轉(zhuǎn)換為數(shù)據(jù)范圍小的數(shù)據(jù)類型的方式叫做強制類型轉(zhuǎn)換,但這樣可能會導(dǎo)致數(shù)據(jù)丟失。
5、運算符和表達(dá)式
- 例如
//float強轉(zhuǎn)為int float aa = 15.369f; int bb = (int)aa; System.out.println(bb);//15
運算符包含算術(shù)運算符、賦值運算符、比較運算符、邏輯運算符、條件(三目)運算符、位運算符
算數(shù)運算符 | +(加),-(減),*(乘),/(除),%(求余),++(自增),--(自減)? ? ? ? ? ? ? ?? |
賦值運算符 | =(等于),+=(自加一次等于),-=(自減一次等于),*=(自乘一次等于),/=(自除一次等于),+(字符串連接符) |
比較運算符 | >(大于),<(小于),>=(大于等于),<=(小于等于),==(比較等于),!=(不等于) |
邏輯運算符 | &(按位與),&&(短路與),|(按位或),||(短路或),!(非,即取反) |
三目運算符 | ?:(三目、條件、三元) |
位運算符 | &(按位與),|(按位或),^(異或運算),<<(左移運算符),>>(右移運算符),>>>(無符號運算符),~(非、取反運算符) |
// ++(--)在變量前,先給自己+1或-1,再賦值
int a = 1;
int b = ++a ;
System.out.println(a); //2
System.out.println(b); //2
// ++(--)在變量后,先賦值,再給自己+1或-1
int a = 1;
int b = a++ ;
System.out.println(a);//2
System.out.println(b);//1
int a = 16;
int b = 3;
System.out.println(a % b);//1(16除以3等于5余1)
5.2?賦值運算符//自加(+=)
int a = 1;
a += 2; //a = a + 2
System.out.println(a);//3
//自減(-=)
int a = 3;
a -= 2; //a = a - 2
System.out.println(a);//1
//自乘(*=)
int a = 3;
a *= 2; //a = a * 2
System.out.println(a);//6
//自除(/=)
int a = 4;
a /= 2; //a = a / 2
System.out.println(a);//2
//字符串連接(+)
System.out.println("abc" + "pwd");//abcpwd
5.3?比較運算符5.4?邏輯運算符5.5?三目運算符5.6?位運算符5.7 表達(dá)式6、流程控制語句二、數(shù)組
1、一維數(shù)組2、二維數(shù)組3、數(shù)組元素查找4、數(shù)組元素排序三、面向?qū)ο?
1、Java類及類的成員2、三大特征3、關(guān)鍵字使用四、異常你是否還在尋找穩(wěn)定的海外服務(wù)器提供商?創(chuàng)新互聯(lián)www.cdcxhl.cn海外機房具備T級流量清洗系統(tǒng)配攻擊溯源,準(zhǔn)確流量調(diào)度確保服務(wù)器高可用性,企業(yè)級服務(wù)器適合批量采購,新人活動首月15元起,快前往官網(wǎng)查看詳情吧
文章題目:【大數(shù)據(jù)開發(fā)階段一】Javase基礎(chǔ)知識點總結(jié)【持續(xù)更新】-創(chuàng)新互聯(lián)
轉(zhuǎn)載來于:http://aaarwkj.com/article2/hosoc.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供關(guān)鍵詞優(yōu)化、虛擬主機、做網(wǎng)站、微信小程序、品牌網(wǎng)站制作、營銷型網(wǎng)站建設(shè)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)
猜你還喜歡下面的內(nèi)容