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