前言
自己的Java理論知識方面一直都不是很好,決定從0開始好好總結(jié)下,把想到的和以前不確定的(查閱資料確定)的知識整理一下,加油??!堅持!??!
Java概述
Java三大體系
1、JavaSE 標準版
2、JavaEE 企業(yè)版(主流)
3、JavaME 微型版
JDK下載安裝
建議安裝JDK8以上
環(huán)境變量配置
1、JAVA_HOME
JDK安裝根目錄,示例:
D:\JDK8_211
2、path
;%JAVA_HOME%\bin;%JAVA_HOME%\jre\bin
3、CLASSPATH
.;%JAVA_HOME%\lib;%JAVA_HOME%\lib\dt.jar;%JAVA_HOME%\lib\tools.jar
驗證安裝和編譯運行DOS
驗證安裝
java -version
編譯運行
1、javac:編譯成class文件
javac Hello.java
2、java:運行java
java Hello
HelloWorld.java
public class HelloWorld{
public static void main(String args[]){
System.out.println("Hello World!");
}
}
Java語法規(guī)則(規(guī)范)
1、大小寫敏感
2、類名首字母大寫
3、方法名小寫
4、源文件名與類名必須相同,后綴名為.java
5、一個源文件只能有一個public修飾的類,可以有多個其他類(內(nèi)部類、匿名類)
6、所有程序由主方法(main())入口開始執(zhí)行
7、標識符規(guī)則
- 以字母、美元符、下劃線開頭,不能用數(shù)字開頭
- 關(guān)鍵字不能做標識符
8、注釋
- 單行://
- 多行:/**/
Java關(guān)鍵字
常見的都在這里了,可以邊看邊回憶這些關(guān)鍵字的意義和使用,復習鞏固,查漏補缺
訪問控制
private //私有模式
protected //保護模式
public //共用模式
類、方法和變量修飾符
class //聲明一個類
abstract //表明類或者成員方法具有抽象屬性
extends //繼承
final //最終屬性,不能改變
interface //聲明一個接口
implements //實現(xiàn)一個接口
new //創(chuàng)建新實例對象
static //表明具有靜態(tài)屬性
synchronized //表明一段代碼需要同步執(zhí)行
volatile //表明兩個或者多個變量必須同步發(fā)生變化
程序控制語句
break //跳出最里循環(huán)
continue //跳出本次繼續(xù)下一次循環(huán)
return //從成員方法返回數(shù)據(jù)
do..while() //至少先執(zhí)行一次,再判斷是否繼續(xù)循環(huán)
if()..else //如果,條件判斷
for //循環(huán)
instanceof //判斷一個對象是否是指定類型的實例對象
switch //分支語句
case //在switch后,表示其中的一個分支
default //switch中都不符合條件則使用default
錯誤處理
try //嘗試一個可能拋出異常的代碼塊
catch //捕捉異常,并進行處理
throw //拋出異常
throws //聲明在當前成員方法所有需要拋出的異常
包相關(guān)
import //指定要訪問的包或類
package //包
基本類型
boolean //布爾型
byte //字節(jié)型
short //短整型
int //整型
long //長整型
char //字符型
float //單精度浮點型
double //雙精度浮點型
null //空,注意:不能賦給原始類型(int,long...)
true //真
false //假
變量引用
super //表示當前對象父類型的引用或父類型的構(gòu)造方法
this //表示當前對象的引用
void //表示當前成員方法沒有返回值
保留關(guān)鍵字
goto
const
常量和變量
常量
1、使用final修飾常量
2、一般使用大寫命名,示例:
final String DEMO = "Hello";
final 修飾變量只允許初始化一次,一般與 static 一起使用
變量
示例:int a = 2;
數(shù)據(jù)類型
基本數(shù)據(jù)類型
引用數(shù)據(jù)類型
數(shù)組
類
接口
數(shù)據(jù)類型轉(zhuǎn)換
自動類型轉(zhuǎn)換
1、表數(shù)范圍小的自動轉(zhuǎn)換為表數(shù)范圍大的
2、byte和short不能和char相互轉(zhuǎn)換,char值范圍為0~65535,byte和short都包含負數(shù)
3、字符串與任何數(shù)據(jù)類型相連都會轉(zhuǎn)換為字符串類型
4、運算有多種數(shù)據(jù)類型結(jié)果自動轉(zhuǎn)換為最大的數(shù)據(jù)類型
強制類型轉(zhuǎn)換
1、表數(shù)大的轉(zhuǎn)表數(shù)小的需要強制轉(zhuǎn)換
2、運算符為(),括號里寫小的數(shù)據(jù)類型,示例:byte b = (byte)12
運算符
算數(shù)
+,-,*,/,%,++,--
賦值
=,+=,*=,/=,%/
比較
< ,>, >= , <=, != ,==
邏輯
&&, || ,!
三目
條件?true的取值:false的取值
優(yōu)先級
盡量使用 小括號,可讀性更好
instanceof
檢查當前對象是否是某個特定類型
控制流程
順序
分支
if else
switch case
循環(huán)
while
do while
至少執(zhí)行一次
for
增強型for循環(huán)
for(int hero : heros)
{
//代碼句子
}
關(guān)鍵字
break
最里層循環(huán)完全中止
continue
中止本次循環(huán),開始下一次循環(huán)
return
直接結(jié)束一個方法
數(shù)組
定義
存儲在堆上的對象,可保存多個同類型變量
數(shù)組初始化,內(nèi)存所占空間固定,長度不可改變
靜態(tài)初始化
int demoArray[3] = {1,2,3};
動態(tài)初始化
int demoArray[10];
聲明
int[] a
創(chuàng)建
int[] a = new int[5];
int[] a = {1,2,3,4,5};
遍歷
//數(shù)組索引從0開始
for (int i = 0; i < myList.length; i++) {
System.out.println(myList[i] + " ");
}
//for each循環(huán)
for (double element: myList) {
System.out.println(element);
}
Arrays類方法
排序
sort
比較
equals
常見操作
排序(冒泡,選擇)
求最大最小值
折半查找
說實話,有點難頂[笑哭]。。。。加油??!堅持!!
|