'Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?'

"

1. Java

Java的特點:簡單的、面向對象的、分佈式的、解釋型的、健壯的、安全的、可移植的、高性能的、多線程的和動態的。

軟件的生命週期:需求、設計、編碼、測試、實施、運維(運行和維護)

Java語言命名規則:

  • 必須是由字母、數字、下劃線、或美元符號構成的字符序列
  • 必須是由字符、下劃線或美元符號開頭,不能以數字開頭
  • 不能是關鍵字
  • 不能是true或false
  • 可以任意長度

Java命名規則

  • 類名:每個單詞的首字母大寫
  • 變量名:第一個單詞的首字母大寫,後面的單詞的首字母大寫
  • 方法名:和變量名一樣
  • 常量名:每個字母都大寫
"

1. Java

Java的特點:簡單的、面向對象的、分佈式的、解釋型的、健壯的、安全的、可移植的、高性能的、多線程的和動態的。

軟件的生命週期:需求、設計、編碼、測試、實施、運維(運行和維護)

Java語言命名規則:

  • 必須是由字母、數字、下劃線、或美元符號構成的字符序列
  • 必須是由字符、下劃線或美元符號開頭,不能以數字開頭
  • 不能是關鍵字
  • 不能是true或false
  • 可以任意長度

Java命名規則

  • 類名:每個單詞的首字母大寫
  • 變量名:第一個單詞的首字母大寫,後面的單詞的首字母大寫
  • 方法名:和變量名一樣
  • 常量名:每個字母都大寫
Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

2. 為什麼說java語言被稱為跨平臺語言

根據java的工作原理,因為我們的.java源文件通過編譯器編譯成以後綴名為.class的可執行文件,然後將.class文件和java庫文件一起從JVM中運行,這樣就可以得到運行結果,又因為java程序可以在任意一個裝有java虛擬機的計算機上運行,這樣就實現了java語言跨平臺運行。

Java語言的工作環境:

一般的家用pc機是不可以直接編輯java程序的。需要先配置java的環境變量才可以。

配置java開發環境變量的步驟:

1. 下載和安裝JDK和JRE,JDK和JRE一般不安裝到同一個文件夾下

2. 配置環境變量

Path jdk的安裝路徑\\bin;jre的安裝路徑\\bin;

Class_Path jdk的安裝路徑\\lib;jdk安裝路徑\\lib\\dt.jar;jdk安裝路徑\\lib\\tools.jar;

檢測環境變量配置是否成功進入DOS界面,輸入命令JavaJavacJava -version

看運行是否有錯。如果成功,則表示java環境變量配置成功。

3. java語言規範

JDK:java開發工具包 作用:編寫和測試java程序

JRE:java開發環境 作用:運行java程序

Jdk和jre的區別:jdk包含了jre。

API:應用程序接口。

API文檔:裡面包含了java已經定義好的類的屬性和方法

IDE:集成開發環境

JavaSE:java標準版 可以用來開發客戶端的應用程序

JavaEE:java企業版 可以用來開發服務器端的應用程序

javaME:java微型版 可以用來開發移動設備的應用程序

4. 基本數據類型

存儲範圍 取值範圍 相應的包裝類

byte 8位 +-2的7次方 Byte

short 16位 +-2的15次方 Short

int 32位 +-2的31次方 Integer

long 64位 +-2的63次方 Long

float Float

double Double

char Character

boolean Boolean

"

1. Java

Java的特點:簡單的、面向對象的、分佈式的、解釋型的、健壯的、安全的、可移植的、高性能的、多線程的和動態的。

軟件的生命週期:需求、設計、編碼、測試、實施、運維(運行和維護)

Java語言命名規則:

  • 必須是由字母、數字、下劃線、或美元符號構成的字符序列
  • 必須是由字符、下劃線或美元符號開頭,不能以數字開頭
  • 不能是關鍵字
  • 不能是true或false
  • 可以任意長度

Java命名規則

  • 類名:每個單詞的首字母大寫
  • 變量名:第一個單詞的首字母大寫,後面的單詞的首字母大寫
  • 方法名:和變量名一樣
  • 常量名:每個字母都大寫
Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

2. 為什麼說java語言被稱為跨平臺語言

根據java的工作原理,因為我們的.java源文件通過編譯器編譯成以後綴名為.class的可執行文件,然後將.class文件和java庫文件一起從JVM中運行,這樣就可以得到運行結果,又因為java程序可以在任意一個裝有java虛擬機的計算機上運行,這樣就實現了java語言跨平臺運行。

Java語言的工作環境:

一般的家用pc機是不可以直接編輯java程序的。需要先配置java的環境變量才可以。

配置java開發環境變量的步驟:

1. 下載和安裝JDK和JRE,JDK和JRE一般不安裝到同一個文件夾下

2. 配置環境變量

Path jdk的安裝路徑\\bin;jre的安裝路徑\\bin;

Class_Path jdk的安裝路徑\\lib;jdk安裝路徑\\lib\\dt.jar;jdk安裝路徑\\lib\\tools.jar;

檢測環境變量配置是否成功進入DOS界面,輸入命令JavaJavacJava -version

看運行是否有錯。如果成功,則表示java環境變量配置成功。

3. java語言規範

JDK:java開發工具包 作用:編寫和測試java程序

JRE:java開發環境 作用:運行java程序

Jdk和jre的區別:jdk包含了jre。

API:應用程序接口。

API文檔:裡面包含了java已經定義好的類的屬性和方法

IDE:集成開發環境

JavaSE:java標準版 可以用來開發客戶端的應用程序

JavaEE:java企業版 可以用來開發服務器端的應用程序

javaME:java微型版 可以用來開發移動設備的應用程序

4. 基本數據類型

存儲範圍 取值範圍 相應的包裝類

byte 8位 +-2的7次方 Byte

short 16位 +-2的15次方 Short

int 32位 +-2的31次方 Integer

long 64位 +-2的63次方 Long

float Float

double Double

char Character

boolean Boolean

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

5. 包裝類

(1)什麼是包裝類?

對基本數據類型提供相應的類,這個類就是包裝類

(2)包裝類的作用?

在數據類型之間的強制轉換中不會出錯

(3)為什麼要使用包裝類?

由於在強制類型的轉換中可能會出現錯誤,比如int轉String,為了避免錯誤所以引用包裝類

(4)什麼是自動裝箱?

將基本數據類型自動的轉換為包裝類的對象,這就是自動裝箱

(5)什麼是自動拆箱?

將包裝類的對象自動的轉換為基本數據類型,這就是自動拆箱

6. 條件控制語句

(1)If和switch語句的區別、轉換

If語句不一定可以轉換為switch語句

Switch語句一定可以轉換為一個多項if語句

(2)for循環控制語句

語法:for(初始化;循環控制條件;循環迭代操作){循環體}

(3)如何使用循環

  • 1.完成一次迭代的代碼
  • 2.確定循環體,查查一次迭代的代碼中哪些需要循環,哪些不需要循環。
  • 3.確定循環條件,判斷循環什麼時候循環,什麼時候不循環
  • 4.選擇循環語句,根據循環條件來選擇循環語句。
  • 5.將循環條件和循環體,代入循環語句的語法結構中。
  • 6.查詢循環是否可以停止。一般情況下,我們的循環都是必須可以停止的。

(4)continue與break的區別

Continue是跳出了一次迭代循環,而break是跳出了整個循環

7. 一維數組

數組:數據類型[] 數組名= new 數據類型[長度];

ArrayList<包裝類>數組名 = new ArrayList<包裝類>();

變量的作用域:我們的變量在特定的範圍內才可以使用

程序的設計方式:

一個是從上到下的設計 從問題的開始 逐步分解成一個小分體最後得到結果

一個是從下到上的設計 從需求的結果開始,一步一步推倒,直到得到已知條件

"

1. Java

Java的特點:簡單的、面向對象的、分佈式的、解釋型的、健壯的、安全的、可移植的、高性能的、多線程的和動態的。

軟件的生命週期:需求、設計、編碼、測試、實施、運維(運行和維護)

Java語言命名規則:

  • 必須是由字母、數字、下劃線、或美元符號構成的字符序列
  • 必須是由字符、下劃線或美元符號開頭,不能以數字開頭
  • 不能是關鍵字
  • 不能是true或false
  • 可以任意長度

Java命名規則

  • 類名:每個單詞的首字母大寫
  • 變量名:第一個單詞的首字母大寫,後面的單詞的首字母大寫
  • 方法名:和變量名一樣
  • 常量名:每個字母都大寫
Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

2. 為什麼說java語言被稱為跨平臺語言

根據java的工作原理,因為我們的.java源文件通過編譯器編譯成以後綴名為.class的可執行文件,然後將.class文件和java庫文件一起從JVM中運行,這樣就可以得到運行結果,又因為java程序可以在任意一個裝有java虛擬機的計算機上運行,這樣就實現了java語言跨平臺運行。

Java語言的工作環境:

一般的家用pc機是不可以直接編輯java程序的。需要先配置java的環境變量才可以。

配置java開發環境變量的步驟:

1. 下載和安裝JDK和JRE,JDK和JRE一般不安裝到同一個文件夾下

2. 配置環境變量

Path jdk的安裝路徑\\bin;jre的安裝路徑\\bin;

Class_Path jdk的安裝路徑\\lib;jdk安裝路徑\\lib\\dt.jar;jdk安裝路徑\\lib\\tools.jar;

檢測環境變量配置是否成功進入DOS界面,輸入命令JavaJavacJava -version

看運行是否有錯。如果成功,則表示java環境變量配置成功。

3. java語言規範

JDK:java開發工具包 作用:編寫和測試java程序

JRE:java開發環境 作用:運行java程序

Jdk和jre的區別:jdk包含了jre。

API:應用程序接口。

API文檔:裡面包含了java已經定義好的類的屬性和方法

IDE:集成開發環境

JavaSE:java標準版 可以用來開發客戶端的應用程序

JavaEE:java企業版 可以用來開發服務器端的應用程序

javaME:java微型版 可以用來開發移動設備的應用程序

4. 基本數據類型

存儲範圍 取值範圍 相應的包裝類

byte 8位 +-2的7次方 Byte

short 16位 +-2的15次方 Short

int 32位 +-2的31次方 Integer

long 64位 +-2的63次方 Long

float Float

double Double

char Character

boolean Boolean

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

5. 包裝類

(1)什麼是包裝類?

對基本數據類型提供相應的類,這個類就是包裝類

(2)包裝類的作用?

在數據類型之間的強制轉換中不會出錯

(3)為什麼要使用包裝類?

由於在強制類型的轉換中可能會出現錯誤,比如int轉String,為了避免錯誤所以引用包裝類

(4)什麼是自動裝箱?

將基本數據類型自動的轉換為包裝類的對象,這就是自動裝箱

(5)什麼是自動拆箱?

將包裝類的對象自動的轉換為基本數據類型,這就是自動拆箱

6. 條件控制語句

(1)If和switch語句的區別、轉換

If語句不一定可以轉換為switch語句

Switch語句一定可以轉換為一個多項if語句

(2)for循環控制語句

語法:for(初始化;循環控制條件;循環迭代操作){循環體}

(3)如何使用循環

  • 1.完成一次迭代的代碼
  • 2.確定循環體,查查一次迭代的代碼中哪些需要循環,哪些不需要循環。
  • 3.確定循環條件,判斷循環什麼時候循環,什麼時候不循環
  • 4.選擇循環語句,根據循環條件來選擇循環語句。
  • 5.將循環條件和循環體,代入循環語句的語法結構中。
  • 6.查詢循環是否可以停止。一般情況下,我們的循環都是必須可以停止的。

(4)continue與break的區別

Continue是跳出了一次迭代循環,而break是跳出了整個循環

7. 一維數組

數組:數據類型[] 數組名= new 數據類型[長度];

ArrayList<包裝類>數組名 = new ArrayList<包裝類>();

變量的作用域:我們的變量在特定的範圍內才可以使用

程序的設計方式:

一個是從上到下的設計 從問題的開始 逐步分解成一個小分體最後得到結果

一個是從下到上的設計 從需求的結果開始,一步一步推倒,直到得到已知條件

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

8. 二維數組

數組的定義:數據類型[][] 數組名 = new 數據類型[行的長度][列的長度];

9. 類和對象

對象:在現實生活中客觀存在的任何事物都可以看作是一個對象

類:一系列具有相似特徵的抽象集合

類和對象的關係:類是對象的抽象集合

對象是類的一個個具體的實例化

類中只包含兩個部分:

屬性,對象擁有靜態特徵

方法,對象執行的動作

This關鍵字:This是指向調用對象本身的引用名

構造方法:方法名必須和所在類的類名相同,構造方法沒有返回值類型

什麼時候調用構造方法?

當使用new,創建一個類的對象的時候,調用構造方法。

可不可以不通過構造方法創建對象?

可以,調用對象的Clone的方法

注意:構造方法可以被重載,但不能被重寫

staitc的含義:如果用static修飾屬性或方法,表示該屬性或方法是靜態的屬性,該屬性或方法是屬於該類的屬性,而不是該類的對象的屬性,調用的時候使用類名( . )屬性名調用

String和StringBuffer和StringBuilder的區別

String的值是不可以改變的,StringBuffer和StringBuilder的值是可以改變的

StringBuffer是多線程(新版本) StringBuilder是單線程(舊版本)

變量的作用域:我們的變量在特定的範圍內才可以使用

10. 面向對象程序設計

面向對象的特徵有哪些方面:

  • 封裝:是面向對象方法的重要原則,就是把對象的屬性和方法結合為一個獨立的整體,並儘可能隱藏對象的內部實現細節。
  • 繼承:在java設計中,使用類來對同一類型的對象進行抽象建立模型,其中不同的類也可能有公共的特徵和行為,將這些公共的特徵和行為放在一個類中,被其他類共享,這種建立模型的方式就叫做是繼承
  • 多態:多態就是同一個行為具有多個不同的表現形式或形態的能力
  • 抽象:是將一類對象的共同特徵總結出來構造類的過程,包括數據抽象和行為抽象兩個方面。抽象只關注對象有哪些屬性和行為,並不關注這些行為的細節是什麼

類的抽象和封裝:

抽象類:不能被實例化的類就是抽象類

封裝:一種是屬性封裝,一種是方法的封裝

  • 屬性封裝,是將屬性前加private,提供get、set方法
  • 方法封裝,不需要知道過程,只需要知道參數和結果

封裝的優點:提高了代碼的安全性和易修改性

靜態變量和實例變量的區別:

靜態變量也叫類變量,這種變量前加了static修飾符。可以直接用類名調用,也可以用對象調用。

實例變量也叫對象變量,這種變量沒有加static修飾符。只能通過對象調用。

"

1. Java

Java的特點:簡單的、面向對象的、分佈式的、解釋型的、健壯的、安全的、可移植的、高性能的、多線程的和動態的。

軟件的生命週期:需求、設計、編碼、測試、實施、運維(運行和維護)

Java語言命名規則:

  • 必須是由字母、數字、下劃線、或美元符號構成的字符序列
  • 必須是由字符、下劃線或美元符號開頭,不能以數字開頭
  • 不能是關鍵字
  • 不能是true或false
  • 可以任意長度

Java命名規則

  • 類名:每個單詞的首字母大寫
  • 變量名:第一個單詞的首字母大寫,後面的單詞的首字母大寫
  • 方法名:和變量名一樣
  • 常量名:每個字母都大寫
Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

2. 為什麼說java語言被稱為跨平臺語言

根據java的工作原理,因為我們的.java源文件通過編譯器編譯成以後綴名為.class的可執行文件,然後將.class文件和java庫文件一起從JVM中運行,這樣就可以得到運行結果,又因為java程序可以在任意一個裝有java虛擬機的計算機上運行,這樣就實現了java語言跨平臺運行。

Java語言的工作環境:

一般的家用pc機是不可以直接編輯java程序的。需要先配置java的環境變量才可以。

配置java開發環境變量的步驟:

1. 下載和安裝JDK和JRE,JDK和JRE一般不安裝到同一個文件夾下

2. 配置環境變量

Path jdk的安裝路徑\\bin;jre的安裝路徑\\bin;

Class_Path jdk的安裝路徑\\lib;jdk安裝路徑\\lib\\dt.jar;jdk安裝路徑\\lib\\tools.jar;

檢測環境變量配置是否成功進入DOS界面,輸入命令JavaJavacJava -version

看運行是否有錯。如果成功,則表示java環境變量配置成功。

3. java語言規範

JDK:java開發工具包 作用:編寫和測試java程序

JRE:java開發環境 作用:運行java程序

Jdk和jre的區別:jdk包含了jre。

API:應用程序接口。

API文檔:裡面包含了java已經定義好的類的屬性和方法

IDE:集成開發環境

JavaSE:java標準版 可以用來開發客戶端的應用程序

JavaEE:java企業版 可以用來開發服務器端的應用程序

javaME:java微型版 可以用來開發移動設備的應用程序

4. 基本數據類型

存儲範圍 取值範圍 相應的包裝類

byte 8位 +-2的7次方 Byte

short 16位 +-2的15次方 Short

int 32位 +-2的31次方 Integer

long 64位 +-2的63次方 Long

float Float

double Double

char Character

boolean Boolean

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

5. 包裝類

(1)什麼是包裝類?

對基本數據類型提供相應的類,這個類就是包裝類

(2)包裝類的作用?

在數據類型之間的強制轉換中不會出錯

(3)為什麼要使用包裝類?

由於在強制類型的轉換中可能會出現錯誤,比如int轉String,為了避免錯誤所以引用包裝類

(4)什麼是自動裝箱?

將基本數據類型自動的轉換為包裝類的對象,這就是自動裝箱

(5)什麼是自動拆箱?

將包裝類的對象自動的轉換為基本數據類型,這就是自動拆箱

6. 條件控制語句

(1)If和switch語句的區別、轉換

If語句不一定可以轉換為switch語句

Switch語句一定可以轉換為一個多項if語句

(2)for循環控制語句

語法:for(初始化;循環控制條件;循環迭代操作){循環體}

(3)如何使用循環

  • 1.完成一次迭代的代碼
  • 2.確定循環體,查查一次迭代的代碼中哪些需要循環,哪些不需要循環。
  • 3.確定循環條件,判斷循環什麼時候循環,什麼時候不循環
  • 4.選擇循環語句,根據循環條件來選擇循環語句。
  • 5.將循環條件和循環體,代入循環語句的語法結構中。
  • 6.查詢循環是否可以停止。一般情況下,我們的循環都是必須可以停止的。

(4)continue與break的區別

Continue是跳出了一次迭代循環,而break是跳出了整個循環

7. 一維數組

數組:數據類型[] 數組名= new 數據類型[長度];

ArrayList<包裝類>數組名 = new ArrayList<包裝類>();

變量的作用域:我們的變量在特定的範圍內才可以使用

程序的設計方式:

一個是從上到下的設計 從問題的開始 逐步分解成一個小分體最後得到結果

一個是從下到上的設計 從需求的結果開始,一步一步推倒,直到得到已知條件

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

8. 二維數組

數組的定義:數據類型[][] 數組名 = new 數據類型[行的長度][列的長度];

9. 類和對象

對象:在現實生活中客觀存在的任何事物都可以看作是一個對象

類:一系列具有相似特徵的抽象集合

類和對象的關係:類是對象的抽象集合

對象是類的一個個具體的實例化

類中只包含兩個部分:

屬性,對象擁有靜態特徵

方法,對象執行的動作

This關鍵字:This是指向調用對象本身的引用名

構造方法:方法名必須和所在類的類名相同,構造方法沒有返回值類型

什麼時候調用構造方法?

當使用new,創建一個類的對象的時候,調用構造方法。

可不可以不通過構造方法創建對象?

可以,調用對象的Clone的方法

注意:構造方法可以被重載,但不能被重寫

staitc的含義:如果用static修飾屬性或方法,表示該屬性或方法是靜態的屬性,該屬性或方法是屬於該類的屬性,而不是該類的對象的屬性,調用的時候使用類名( . )屬性名調用

String和StringBuffer和StringBuilder的區別

String的值是不可以改變的,StringBuffer和StringBuilder的值是可以改變的

StringBuffer是多線程(新版本) StringBuilder是單線程(舊版本)

變量的作用域:我們的變量在特定的範圍內才可以使用

10. 面向對象程序設計

面向對象的特徵有哪些方面:

  • 封裝:是面向對象方法的重要原則,就是把對象的屬性和方法結合為一個獨立的整體,並儘可能隱藏對象的內部實現細節。
  • 繼承:在java設計中,使用類來對同一類型的對象進行抽象建立模型,其中不同的類也可能有公共的特徵和行為,將這些公共的特徵和行為放在一個類中,被其他類共享,這種建立模型的方式就叫做是繼承
  • 多態:多態就是同一個行為具有多個不同的表現形式或形態的能力
  • 抽象:是將一類對象的共同特徵總結出來構造類的過程,包括數據抽象和行為抽象兩個方面。抽象只關注對象有哪些屬性和行為,並不關注這些行為的細節是什麼

類的抽象和封裝:

抽象類:不能被實例化的類就是抽象類

封裝:一種是屬性封裝,一種是方法的封裝

  • 屬性封裝,是將屬性前加private,提供get、set方法
  • 方法封裝,不需要知道過程,只需要知道參數和結果

封裝的優點:提高了代碼的安全性和易修改性

靜態變量和實例變量的區別:

靜態變量也叫類變量,這種變量前加了static修飾符。可以直接用類名調用,也可以用對象調用。

實例變量也叫對象變量,這種變量沒有加static修飾符。只能通過對象調用。

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

11. 數據庫

DB:存儲數據的倉庫

DB數據庫的簡寫:

DBS 數據庫系統 存儲數據

DBA數據庫管理員 管理數據庫的人員

DBMS數據庫管理系統 方便對數據庫中的數據進行操作

RDBMS關係型數據庫管理系統

DB分為 關係型數據庫和非關係型數據庫

關係型數據庫:MySQL、Oracle

非關係型數據庫:noSQL

關係型數據庫和非關係型數據庫的區別:關係型數據庫不能獨立存在,而非關係型數據庫可以

關係型數據庫:因為該數據庫中的每一張表都不能獨立存在,必須要有關係存在。

  • 完整性約束有哪些:
  • 域約束、主鍵約束、外鍵約束
  • 域約束:取值範圍在特定的範圍之中
  • 主鍵約束:非空唯一
  • 外鍵約束:取值必須要在外鍵表中存在

約束條件:域約束、主鍵約束、外鍵約束、非空約束、唯一約束

主鍵:非空唯一

候選鍵:每一個鍵都可以稱為候選鍵

超鍵:是一個屬性或一組屬性,他唯一的標識了一個關係

外鍵:定義了關係之間的關係

數據庫的三大範式:

  • 第一範式是原子性
  • 第二範式是完全依賴,沒有部分依賴
  • 第三範式是沒有傳遞依賴

JDBC:Java數據庫連接

作用:使用Java語言來連接數據庫中的數據

使用JDBC:

1.加載驅動 class.forName(”com.mysql.jdbc.Driver”);

2.建立連接 Connection con = DriverManager.getConnection(url,userName,PW);

3.執行語句

有變量:PrepareStatement ps = con.getprepareStatement(“?變量”);

無變量:Statement ps = com.preparedStatement(“具體的SQL語句”);

truncate 和delete的區別:

Truncate 1.刪除表中的所有數 2.DDL語言 3.刪除表中的結構

Delete 1.刪除指定的數據 2.DML語言 3.不刪除表的結構

存儲過程:存儲過程,為了減少開發人員編寫SQL語句的重複性

語法:

CREATE PROCEDURE proc_test(

參數

)

BEGIN

方法體

END;

視圖:視圖是原始數據庫數據的一種變換,是查看錶中數據的另外一種方式。

原因:讓不同的人員關注不同的數據

索引:是指對數據庫表中一列或多列的值進行排序的一種結構

索引的作用:使用索引可快速訪問數據庫表中的特定的信息

事務:事務是作為單個邏輯單元執行的一系列操作

單個邏輯單元:通俗的理解為一次操作

事務的特徵:原子性、穩定性、隔離性、可靠性

事務的原因:因為在實際情況中,我們的業務可能是有幾個步驟共同完成的,如果其中一個步驟出現錯誤,那麼我們的業務的結果可能就不正確。

"

1. Java

Java的特點:簡單的、面向對象的、分佈式的、解釋型的、健壯的、安全的、可移植的、高性能的、多線程的和動態的。

軟件的生命週期:需求、設計、編碼、測試、實施、運維(運行和維護)

Java語言命名規則:

  • 必須是由字母、數字、下劃線、或美元符號構成的字符序列
  • 必須是由字符、下劃線或美元符號開頭,不能以數字開頭
  • 不能是關鍵字
  • 不能是true或false
  • 可以任意長度

Java命名規則

  • 類名:每個單詞的首字母大寫
  • 變量名:第一個單詞的首字母大寫,後面的單詞的首字母大寫
  • 方法名:和變量名一樣
  • 常量名:每個字母都大寫
Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

2. 為什麼說java語言被稱為跨平臺語言

根據java的工作原理,因為我們的.java源文件通過編譯器編譯成以後綴名為.class的可執行文件,然後將.class文件和java庫文件一起從JVM中運行,這樣就可以得到運行結果,又因為java程序可以在任意一個裝有java虛擬機的計算機上運行,這樣就實現了java語言跨平臺運行。

Java語言的工作環境:

一般的家用pc機是不可以直接編輯java程序的。需要先配置java的環境變量才可以。

配置java開發環境變量的步驟:

1. 下載和安裝JDK和JRE,JDK和JRE一般不安裝到同一個文件夾下

2. 配置環境變量

Path jdk的安裝路徑\\bin;jre的安裝路徑\\bin;

Class_Path jdk的安裝路徑\\lib;jdk安裝路徑\\lib\\dt.jar;jdk安裝路徑\\lib\\tools.jar;

檢測環境變量配置是否成功進入DOS界面,輸入命令JavaJavacJava -version

看運行是否有錯。如果成功,則表示java環境變量配置成功。

3. java語言規範

JDK:java開發工具包 作用:編寫和測試java程序

JRE:java開發環境 作用:運行java程序

Jdk和jre的區別:jdk包含了jre。

API:應用程序接口。

API文檔:裡面包含了java已經定義好的類的屬性和方法

IDE:集成開發環境

JavaSE:java標準版 可以用來開發客戶端的應用程序

JavaEE:java企業版 可以用來開發服務器端的應用程序

javaME:java微型版 可以用來開發移動設備的應用程序

4. 基本數據類型

存儲範圍 取值範圍 相應的包裝類

byte 8位 +-2的7次方 Byte

short 16位 +-2的15次方 Short

int 32位 +-2的31次方 Integer

long 64位 +-2的63次方 Long

float Float

double Double

char Character

boolean Boolean

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

5. 包裝類

(1)什麼是包裝類?

對基本數據類型提供相應的類,這個類就是包裝類

(2)包裝類的作用?

在數據類型之間的強制轉換中不會出錯

(3)為什麼要使用包裝類?

由於在強制類型的轉換中可能會出現錯誤,比如int轉String,為了避免錯誤所以引用包裝類

(4)什麼是自動裝箱?

將基本數據類型自動的轉換為包裝類的對象,這就是自動裝箱

(5)什麼是自動拆箱?

將包裝類的對象自動的轉換為基本數據類型,這就是自動拆箱

6. 條件控制語句

(1)If和switch語句的區別、轉換

If語句不一定可以轉換為switch語句

Switch語句一定可以轉換為一個多項if語句

(2)for循環控制語句

語法:for(初始化;循環控制條件;循環迭代操作){循環體}

(3)如何使用循環

  • 1.完成一次迭代的代碼
  • 2.確定循環體,查查一次迭代的代碼中哪些需要循環,哪些不需要循環。
  • 3.確定循環條件,判斷循環什麼時候循環,什麼時候不循環
  • 4.選擇循環語句,根據循環條件來選擇循環語句。
  • 5.將循環條件和循環體,代入循環語句的語法結構中。
  • 6.查詢循環是否可以停止。一般情況下,我們的循環都是必須可以停止的。

(4)continue與break的區別

Continue是跳出了一次迭代循環,而break是跳出了整個循環

7. 一維數組

數組:數據類型[] 數組名= new 數據類型[長度];

ArrayList<包裝類>數組名 = new ArrayList<包裝類>();

變量的作用域:我們的變量在特定的範圍內才可以使用

程序的設計方式:

一個是從上到下的設計 從問題的開始 逐步分解成一個小分體最後得到結果

一個是從下到上的設計 從需求的結果開始,一步一步推倒,直到得到已知條件

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

8. 二維數組

數組的定義:數據類型[][] 數組名 = new 數據類型[行的長度][列的長度];

9. 類和對象

對象:在現實生活中客觀存在的任何事物都可以看作是一個對象

類:一系列具有相似特徵的抽象集合

類和對象的關係:類是對象的抽象集合

對象是類的一個個具體的實例化

類中只包含兩個部分:

屬性,對象擁有靜態特徵

方法,對象執行的動作

This關鍵字:This是指向調用對象本身的引用名

構造方法:方法名必須和所在類的類名相同,構造方法沒有返回值類型

什麼時候調用構造方法?

當使用new,創建一個類的對象的時候,調用構造方法。

可不可以不通過構造方法創建對象?

可以,調用對象的Clone的方法

注意:構造方法可以被重載,但不能被重寫

staitc的含義:如果用static修飾屬性或方法,表示該屬性或方法是靜態的屬性,該屬性或方法是屬於該類的屬性,而不是該類的對象的屬性,調用的時候使用類名( . )屬性名調用

String和StringBuffer和StringBuilder的區別

String的值是不可以改變的,StringBuffer和StringBuilder的值是可以改變的

StringBuffer是多線程(新版本) StringBuilder是單線程(舊版本)

變量的作用域:我們的變量在特定的範圍內才可以使用

10. 面向對象程序設計

面向對象的特徵有哪些方面:

  • 封裝:是面向對象方法的重要原則,就是把對象的屬性和方法結合為一個獨立的整體,並儘可能隱藏對象的內部實現細節。
  • 繼承:在java設計中,使用類來對同一類型的對象進行抽象建立模型,其中不同的類也可能有公共的特徵和行為,將這些公共的特徵和行為放在一個類中,被其他類共享,這種建立模型的方式就叫做是繼承
  • 多態:多態就是同一個行為具有多個不同的表現形式或形態的能力
  • 抽象:是將一類對象的共同特徵總結出來構造類的過程,包括數據抽象和行為抽象兩個方面。抽象只關注對象有哪些屬性和行為,並不關注這些行為的細節是什麼

類的抽象和封裝:

抽象類:不能被實例化的類就是抽象類

封裝:一種是屬性封裝,一種是方法的封裝

  • 屬性封裝,是將屬性前加private,提供get、set方法
  • 方法封裝,不需要知道過程,只需要知道參數和結果

封裝的優點:提高了代碼的安全性和易修改性

靜態變量和實例變量的區別:

靜態變量也叫類變量,這種變量前加了static修飾符。可以直接用類名調用,也可以用對象調用。

實例變量也叫對象變量,這種變量沒有加static修飾符。只能通過對象調用。

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

11. 數據庫

DB:存儲數據的倉庫

DB數據庫的簡寫:

DBS 數據庫系統 存儲數據

DBA數據庫管理員 管理數據庫的人員

DBMS數據庫管理系統 方便對數據庫中的數據進行操作

RDBMS關係型數據庫管理系統

DB分為 關係型數據庫和非關係型數據庫

關係型數據庫:MySQL、Oracle

非關係型數據庫:noSQL

關係型數據庫和非關係型數據庫的區別:關係型數據庫不能獨立存在,而非關係型數據庫可以

關係型數據庫:因為該數據庫中的每一張表都不能獨立存在,必須要有關係存在。

  • 完整性約束有哪些:
  • 域約束、主鍵約束、外鍵約束
  • 域約束:取值範圍在特定的範圍之中
  • 主鍵約束:非空唯一
  • 外鍵約束:取值必須要在外鍵表中存在

約束條件:域約束、主鍵約束、外鍵約束、非空約束、唯一約束

主鍵:非空唯一

候選鍵:每一個鍵都可以稱為候選鍵

超鍵:是一個屬性或一組屬性,他唯一的標識了一個關係

外鍵:定義了關係之間的關係

數據庫的三大範式:

  • 第一範式是原子性
  • 第二範式是完全依賴,沒有部分依賴
  • 第三範式是沒有傳遞依賴

JDBC:Java數據庫連接

作用:使用Java語言來連接數據庫中的數據

使用JDBC:

1.加載驅動 class.forName(”com.mysql.jdbc.Driver”);

2.建立連接 Connection con = DriverManager.getConnection(url,userName,PW);

3.執行語句

有變量:PrepareStatement ps = con.getprepareStatement(“?變量”);

無變量:Statement ps = com.preparedStatement(“具體的SQL語句”);

truncate 和delete的區別:

Truncate 1.刪除表中的所有數 2.DDL語言 3.刪除表中的結構

Delete 1.刪除指定的數據 2.DML語言 3.不刪除表的結構

存儲過程:存儲過程,為了減少開發人員編寫SQL語句的重複性

語法:

CREATE PROCEDURE proc_test(

參數

)

BEGIN

方法體

END;

視圖:視圖是原始數據庫數據的一種變換,是查看錶中數據的另外一種方式。

原因:讓不同的人員關注不同的數據

索引:是指對數據庫表中一列或多列的值進行排序的一種結構

索引的作用:使用索引可快速訪問數據庫表中的特定的信息

事務:事務是作為單個邏輯單元執行的一系列操作

單個邏輯單元:通俗的理解為一次操作

事務的特徵:原子性、穩定性、隔離性、可靠性

事務的原因:因為在實際情況中,我們的業務可能是有幾個步驟共同完成的,如果其中一個步驟出現錯誤,那麼我們的業務的結果可能就不正確。

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

12. 繼承

繼承: 在java設計中,使用類來對同一類型的對象進行抽象建立模型,其中不同的類也可能有公共的特徵和行為,將這些公共的特徵和行為放在一個類中,被其他類共享,這種建立模型的方式就叫做是繼承

作用:提高了代碼的維護性、整潔性、複用性

實現:子類中包含父類的特性,子類包含父類的所有屬性和方法。子類中的屬性和方法,父類是不包含的

使用:兩個類之間必須是is-a的關係

這兩個類中有相同的屬性和方法

繼承的關鍵字extends是寫在子類中的

super關鍵字: Super代指父類

方法的重載:是指在同一個類中,兩個方法可以方法名相同,返回值類型相同,參數不同

方法的重寫:是指子類中的方法可以和父類中的方法的方法名相同,返回值類型相同,參數也相同

方法的重載與重寫的關係和區別:

方法重寫發生在通過繼承而相關的不同的類中,而方法重載可以發生在同一個類中,也可以發生在由於繼承而相關的方法名但是參數列表不同的類中

方法重寫具有相同的方法名,返回值類型和參數列表,而方法的重載具有相同的方法名和返回值類型,但是參數列表不同

為什麼不能根據返回值類型來區分重載?

因為JVM是通過路徑、方法名、參數、重載在同一類下,當路徑、方法名、參數相同,無法區分哪個方法

13. 多態

多態是同一個行為具有多個不同的表現形式或形態的能力

多態的使用條件:

  • 使用多態必須要有繼承關係
  • 使用多態的類中,必須重寫父類中的方法
  • 父類引用指向子類對象

什麼是動態綁定、靜態綁定?

在代碼的執行期間是會判斷引用對象的實際類型,根據實際類型調用相應的方法,這種調用方法的行為叫做動態綁定。

靜態綁定:java程序的編譯過程中,方法的調用和代碼的執行過程叫做靜態綁定

動態綁定和靜態綁定的區別

動態綁定是在執行過程中,靜態綁定是在編譯過程中。

多態的原理:我們是通過動態綁定來實現多態的

instanceof的含義 怎樣使用: 是用來運行時指出對象是否是特點類的一個實例

多態的使用、作用、 優點:

使用多態是在初始化類的對象的時候使用。

多態最大的作用和優勢是用來開發框架結構,而不是針對具體的方法的實現

優點:提高了代碼的替換性、擴充性、接口性、靈活性、簡化性

向上轉型:父類引用指向子類對象

向下轉型:把子類的實際類型轉換成父類

"

1. Java

Java的特點:簡單的、面向對象的、分佈式的、解釋型的、健壯的、安全的、可移植的、高性能的、多線程的和動態的。

軟件的生命週期:需求、設計、編碼、測試、實施、運維(運行和維護)

Java語言命名規則:

  • 必須是由字母、數字、下劃線、或美元符號構成的字符序列
  • 必須是由字符、下劃線或美元符號開頭,不能以數字開頭
  • 不能是關鍵字
  • 不能是true或false
  • 可以任意長度

Java命名規則

  • 類名:每個單詞的首字母大寫
  • 變量名:第一個單詞的首字母大寫,後面的單詞的首字母大寫
  • 方法名:和變量名一樣
  • 常量名:每個字母都大寫
Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

2. 為什麼說java語言被稱為跨平臺語言

根據java的工作原理,因為我們的.java源文件通過編譯器編譯成以後綴名為.class的可執行文件,然後將.class文件和java庫文件一起從JVM中運行,這樣就可以得到運行結果,又因為java程序可以在任意一個裝有java虛擬機的計算機上運行,這樣就實現了java語言跨平臺運行。

Java語言的工作環境:

一般的家用pc機是不可以直接編輯java程序的。需要先配置java的環境變量才可以。

配置java開發環境變量的步驟:

1. 下載和安裝JDK和JRE,JDK和JRE一般不安裝到同一個文件夾下

2. 配置環境變量

Path jdk的安裝路徑\\bin;jre的安裝路徑\\bin;

Class_Path jdk的安裝路徑\\lib;jdk安裝路徑\\lib\\dt.jar;jdk安裝路徑\\lib\\tools.jar;

檢測環境變量配置是否成功進入DOS界面,輸入命令JavaJavacJava -version

看運行是否有錯。如果成功,則表示java環境變量配置成功。

3. java語言規範

JDK:java開發工具包 作用:編寫和測試java程序

JRE:java開發環境 作用:運行java程序

Jdk和jre的區別:jdk包含了jre。

API:應用程序接口。

API文檔:裡面包含了java已經定義好的類的屬性和方法

IDE:集成開發環境

JavaSE:java標準版 可以用來開發客戶端的應用程序

JavaEE:java企業版 可以用來開發服務器端的應用程序

javaME:java微型版 可以用來開發移動設備的應用程序

4. 基本數據類型

存儲範圍 取值範圍 相應的包裝類

byte 8位 +-2的7次方 Byte

short 16位 +-2的15次方 Short

int 32位 +-2的31次方 Integer

long 64位 +-2的63次方 Long

float Float

double Double

char Character

boolean Boolean

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

5. 包裝類

(1)什麼是包裝類?

對基本數據類型提供相應的類,這個類就是包裝類

(2)包裝類的作用?

在數據類型之間的強制轉換中不會出錯

(3)為什麼要使用包裝類?

由於在強制類型的轉換中可能會出現錯誤,比如int轉String,為了避免錯誤所以引用包裝類

(4)什麼是自動裝箱?

將基本數據類型自動的轉換為包裝類的對象,這就是自動裝箱

(5)什麼是自動拆箱?

將包裝類的對象自動的轉換為基本數據類型,這就是自動拆箱

6. 條件控制語句

(1)If和switch語句的區別、轉換

If語句不一定可以轉換為switch語句

Switch語句一定可以轉換為一個多項if語句

(2)for循環控制語句

語法:for(初始化;循環控制條件;循環迭代操作){循環體}

(3)如何使用循環

  • 1.完成一次迭代的代碼
  • 2.確定循環體,查查一次迭代的代碼中哪些需要循環,哪些不需要循環。
  • 3.確定循環條件,判斷循環什麼時候循環,什麼時候不循環
  • 4.選擇循環語句,根據循環條件來選擇循環語句。
  • 5.將循環條件和循環體,代入循環語句的語法結構中。
  • 6.查詢循環是否可以停止。一般情況下,我們的循環都是必須可以停止的。

(4)continue與break的區別

Continue是跳出了一次迭代循環,而break是跳出了整個循環

7. 一維數組

數組:數據類型[] 數組名= new 數據類型[長度];

ArrayList<包裝類>數組名 = new ArrayList<包裝類>();

變量的作用域:我們的變量在特定的範圍內才可以使用

程序的設計方式:

一個是從上到下的設計 從問題的開始 逐步分解成一個小分體最後得到結果

一個是從下到上的設計 從需求的結果開始,一步一步推倒,直到得到已知條件

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

8. 二維數組

數組的定義:數據類型[][] 數組名 = new 數據類型[行的長度][列的長度];

9. 類和對象

對象:在現實生活中客觀存在的任何事物都可以看作是一個對象

類:一系列具有相似特徵的抽象集合

類和對象的關係:類是對象的抽象集合

對象是類的一個個具體的實例化

類中只包含兩個部分:

屬性,對象擁有靜態特徵

方法,對象執行的動作

This關鍵字:This是指向調用對象本身的引用名

構造方法:方法名必須和所在類的類名相同,構造方法沒有返回值類型

什麼時候調用構造方法?

當使用new,創建一個類的對象的時候,調用構造方法。

可不可以不通過構造方法創建對象?

可以,調用對象的Clone的方法

注意:構造方法可以被重載,但不能被重寫

staitc的含義:如果用static修飾屬性或方法,表示該屬性或方法是靜態的屬性,該屬性或方法是屬於該類的屬性,而不是該類的對象的屬性,調用的時候使用類名( . )屬性名調用

String和StringBuffer和StringBuilder的區別

String的值是不可以改變的,StringBuffer和StringBuilder的值是可以改變的

StringBuffer是多線程(新版本) StringBuilder是單線程(舊版本)

變量的作用域:我們的變量在特定的範圍內才可以使用

10. 面向對象程序設計

面向對象的特徵有哪些方面:

  • 封裝:是面向對象方法的重要原則,就是把對象的屬性和方法結合為一個獨立的整體,並儘可能隱藏對象的內部實現細節。
  • 繼承:在java設計中,使用類來對同一類型的對象進行抽象建立模型,其中不同的類也可能有公共的特徵和行為,將這些公共的特徵和行為放在一個類中,被其他類共享,這種建立模型的方式就叫做是繼承
  • 多態:多態就是同一個行為具有多個不同的表現形式或形態的能力
  • 抽象:是將一類對象的共同特徵總結出來構造類的過程,包括數據抽象和行為抽象兩個方面。抽象只關注對象有哪些屬性和行為,並不關注這些行為的細節是什麼

類的抽象和封裝:

抽象類:不能被實例化的類就是抽象類

封裝:一種是屬性封裝,一種是方法的封裝

  • 屬性封裝,是將屬性前加private,提供get、set方法
  • 方法封裝,不需要知道過程,只需要知道參數和結果

封裝的優點:提高了代碼的安全性和易修改性

靜態變量和實例變量的區別:

靜態變量也叫類變量,這種變量前加了static修飾符。可以直接用類名調用,也可以用對象調用。

實例變量也叫對象變量,這種變量沒有加static修飾符。只能通過對象調用。

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

11. 數據庫

DB:存儲數據的倉庫

DB數據庫的簡寫:

DBS 數據庫系統 存儲數據

DBA數據庫管理員 管理數據庫的人員

DBMS數據庫管理系統 方便對數據庫中的數據進行操作

RDBMS關係型數據庫管理系統

DB分為 關係型數據庫和非關係型數據庫

關係型數據庫:MySQL、Oracle

非關係型數據庫:noSQL

關係型數據庫和非關係型數據庫的區別:關係型數據庫不能獨立存在,而非關係型數據庫可以

關係型數據庫:因為該數據庫中的每一張表都不能獨立存在,必須要有關係存在。

  • 完整性約束有哪些:
  • 域約束、主鍵約束、外鍵約束
  • 域約束:取值範圍在特定的範圍之中
  • 主鍵約束:非空唯一
  • 外鍵約束:取值必須要在外鍵表中存在

約束條件:域約束、主鍵約束、外鍵約束、非空約束、唯一約束

主鍵:非空唯一

候選鍵:每一個鍵都可以稱為候選鍵

超鍵:是一個屬性或一組屬性,他唯一的標識了一個關係

外鍵:定義了關係之間的關係

數據庫的三大範式:

  • 第一範式是原子性
  • 第二範式是完全依賴,沒有部分依賴
  • 第三範式是沒有傳遞依賴

JDBC:Java數據庫連接

作用:使用Java語言來連接數據庫中的數據

使用JDBC:

1.加載驅動 class.forName(”com.mysql.jdbc.Driver”);

2.建立連接 Connection con = DriverManager.getConnection(url,userName,PW);

3.執行語句

有變量:PrepareStatement ps = con.getprepareStatement(“?變量”);

無變量:Statement ps = com.preparedStatement(“具體的SQL語句”);

truncate 和delete的區別:

Truncate 1.刪除表中的所有數 2.DDL語言 3.刪除表中的結構

Delete 1.刪除指定的數據 2.DML語言 3.不刪除表的結構

存儲過程:存儲過程,為了減少開發人員編寫SQL語句的重複性

語法:

CREATE PROCEDURE proc_test(

參數

)

BEGIN

方法體

END;

視圖:視圖是原始數據庫數據的一種變換,是查看錶中數據的另外一種方式。

原因:讓不同的人員關注不同的數據

索引:是指對數據庫表中一列或多列的值進行排序的一種結構

索引的作用:使用索引可快速訪問數據庫表中的特定的信息

事務:事務是作為單個邏輯單元執行的一系列操作

單個邏輯單元:通俗的理解為一次操作

事務的特徵:原子性、穩定性、隔離性、可靠性

事務的原因:因為在實際情況中,我們的業務可能是有幾個步驟共同完成的,如果其中一個步驟出現錯誤,那麼我們的業務的結果可能就不正確。

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

12. 繼承

繼承: 在java設計中,使用類來對同一類型的對象進行抽象建立模型,其中不同的類也可能有公共的特徵和行為,將這些公共的特徵和行為放在一個類中,被其他類共享,這種建立模型的方式就叫做是繼承

作用:提高了代碼的維護性、整潔性、複用性

實現:子類中包含父類的特性,子類包含父類的所有屬性和方法。子類中的屬性和方法,父類是不包含的

使用:兩個類之間必須是is-a的關係

這兩個類中有相同的屬性和方法

繼承的關鍵字extends是寫在子類中的

super關鍵字: Super代指父類

方法的重載:是指在同一個類中,兩個方法可以方法名相同,返回值類型相同,參數不同

方法的重寫:是指子類中的方法可以和父類中的方法的方法名相同,返回值類型相同,參數也相同

方法的重載與重寫的關係和區別:

方法重寫發生在通過繼承而相關的不同的類中,而方法重載可以發生在同一個類中,也可以發生在由於繼承而相關的方法名但是參數列表不同的類中

方法重寫具有相同的方法名,返回值類型和參數列表,而方法的重載具有相同的方法名和返回值類型,但是參數列表不同

為什麼不能根據返回值類型來區分重載?

因為JVM是通過路徑、方法名、參數、重載在同一類下,當路徑、方法名、參數相同,無法區分哪個方法

13. 多態

多態是同一個行為具有多個不同的表現形式或形態的能力

多態的使用條件:

  • 使用多態必須要有繼承關係
  • 使用多態的類中,必須重寫父類中的方法
  • 父類引用指向子類對象

什麼是動態綁定、靜態綁定?

在代碼的執行期間是會判斷引用對象的實際類型,根據實際類型調用相應的方法,這種調用方法的行為叫做動態綁定。

靜態綁定:java程序的編譯過程中,方法的調用和代碼的執行過程叫做靜態綁定

動態綁定和靜態綁定的區別

動態綁定是在執行過程中,靜態綁定是在編譯過程中。

多態的原理:我們是通過動態綁定來實現多態的

instanceof的含義 怎樣使用: 是用來運行時指出對象是否是特點類的一個實例

多態的使用、作用、 優點:

使用多態是在初始化類的對象的時候使用。

多態最大的作用和優勢是用來開發框架結構,而不是針對具體的方法的實現

優點:提高了代碼的替換性、擴充性、接口性、靈活性、簡化性

向上轉型:父類引用指向子類對象

向下轉型:把子類的實際類型轉換成父類

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

14. 異常

異常:異常是一種對象,表示阻止正常運行程序執行的錯誤或者情況。

異常的分類:

  • 系統錯誤(Error):是由java虛擬機拋出的,用Error表示。
  • 異常(Exception):是用Exception類表示,它描述的是由程序
  • 和外部環境所引起的錯誤。
  • 運行時異常(RuntimeException):使用RuntimeException類表
  • 示,它描述的是程序設計錯誤。

Error和Exception的區別:Error 錯誤 Exception 異常

怎樣使用異常:

在主方法處理異常

try{

可能產生異常的語句

}catch(異常的類型){

異常後執行的語句

}

throw與throws的區別:

throw寫在方法體,後面跟異常類型的對象

throws寫在方法頭,後面跟異常的類型

finally的子句 含義:

不論是否出現或者是否被捕獲,都可執行某些代碼

final與finally的區別:

被final修飾的變量是一個常量

被final修飾的方法不能被重寫和重載

被final修飾的類不能被繼承

15. 文本IO

流:流是抽象的概念,是對輸入輸出設備的抽象,java程序中,對於數據的輸入/輸出操作都是以“流”的方式進行。設備可以是文件,網絡,內存等。

流的分類:

  • 處理的數據單位不同,可分為:字符流,字節流
  • 數據流方向不同,可分為:輸入流,輸出流
  • 功能不同,可分為:節點流,處理流

什麼是文本IO,為什麼要使用文本IO?

文本IO I = input輸入 O = output輸出

輸入和輸出,是可以在計算機本地的文件中的。

為了使得Java程序有更加廣泛的用途

絕對文件名:是由文件名和它的完整路徑以及驅動器字母組成。

File類的作用:創建、刪除文件或目錄,重命名文件

怎樣使用File類,來重命名文件?

File file = new File(“D:\\\\abc.java”);

If(file.exists()){file.renameTo(new FIle(“d:\\\\123.txt”));}

怎樣使用FIle類,來刪除文件?

File file = new File(“正確的文件名”);

file.delete();

怎樣使用File類,來創建目錄或文件?

創建File文件對象

File file = new File(“需要創建的目錄或文件名(絕對文件名)”);

創建該文件或目錄

  • file.mkdir(); 創建目錄 —— 創建一個
  • file.msdirs(); 創建目錄 —— 一次創建多個

怎樣使用Scanner類,讀取文件?

步驟:創建File類文件

FIle file = new File(“文件的絕對文件名”);

創建輸入流

Scanner input = new Scanner(file);

讀取文件

while(input.next()){} —— 數據庫

While(input.hasNext()){String str = input.nextLine();}

怎樣使用PrintWriter類,來修改文件?

步驟:創建File類

File file = new File(“文件的絕對文件名”);

創建PrintWriter類

PrintWriter pw = new PrintWriter(file);

寫入:

pw.println(); pw.print(); pw.printf();

和控制檯輸出是一樣的。System.out.println();

關閉 :pw.close();

怎樣自動關閉文件資源?

使用try(){}來自動關閉,需要和try-catch語句區分開來

try(PrintWriter pw = new PrintWriter(f1)){

pw.println(); pw.print(); pw.printf();

//和控制檯輸出是一樣的。System.out.println();

}

Scanner類的工作原理:

Scanner類中的方法都佳作是標記方法

這些方法讀取數據的時候會根據標記來讀取

"

1. Java

Java的特點:簡單的、面向對象的、分佈式的、解釋型的、健壯的、安全的、可移植的、高性能的、多線程的和動態的。

軟件的生命週期:需求、設計、編碼、測試、實施、運維(運行和維護)

Java語言命名規則:

  • 必須是由字母、數字、下劃線、或美元符號構成的字符序列
  • 必須是由字符、下劃線或美元符號開頭,不能以數字開頭
  • 不能是關鍵字
  • 不能是true或false
  • 可以任意長度

Java命名規則

  • 類名:每個單詞的首字母大寫
  • 變量名:第一個單詞的首字母大寫,後面的單詞的首字母大寫
  • 方法名:和變量名一樣
  • 常量名:每個字母都大寫
Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

2. 為什麼說java語言被稱為跨平臺語言

根據java的工作原理,因為我們的.java源文件通過編譯器編譯成以後綴名為.class的可執行文件,然後將.class文件和java庫文件一起從JVM中運行,這樣就可以得到運行結果,又因為java程序可以在任意一個裝有java虛擬機的計算機上運行,這樣就實現了java語言跨平臺運行。

Java語言的工作環境:

一般的家用pc機是不可以直接編輯java程序的。需要先配置java的環境變量才可以。

配置java開發環境變量的步驟:

1. 下載和安裝JDK和JRE,JDK和JRE一般不安裝到同一個文件夾下

2. 配置環境變量

Path jdk的安裝路徑\\bin;jre的安裝路徑\\bin;

Class_Path jdk的安裝路徑\\lib;jdk安裝路徑\\lib\\dt.jar;jdk安裝路徑\\lib\\tools.jar;

檢測環境變量配置是否成功進入DOS界面,輸入命令JavaJavacJava -version

看運行是否有錯。如果成功,則表示java環境變量配置成功。

3. java語言規範

JDK:java開發工具包 作用:編寫和測試java程序

JRE:java開發環境 作用:運行java程序

Jdk和jre的區別:jdk包含了jre。

API:應用程序接口。

API文檔:裡面包含了java已經定義好的類的屬性和方法

IDE:集成開發環境

JavaSE:java標準版 可以用來開發客戶端的應用程序

JavaEE:java企業版 可以用來開發服務器端的應用程序

javaME:java微型版 可以用來開發移動設備的應用程序

4. 基本數據類型

存儲範圍 取值範圍 相應的包裝類

byte 8位 +-2的7次方 Byte

short 16位 +-2的15次方 Short

int 32位 +-2的31次方 Integer

long 64位 +-2的63次方 Long

float Float

double Double

char Character

boolean Boolean

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

5. 包裝類

(1)什麼是包裝類?

對基本數據類型提供相應的類,這個類就是包裝類

(2)包裝類的作用?

在數據類型之間的強制轉換中不會出錯

(3)為什麼要使用包裝類?

由於在強制類型的轉換中可能會出現錯誤,比如int轉String,為了避免錯誤所以引用包裝類

(4)什麼是自動裝箱?

將基本數據類型自動的轉換為包裝類的對象,這就是自動裝箱

(5)什麼是自動拆箱?

將包裝類的對象自動的轉換為基本數據類型,這就是自動拆箱

6. 條件控制語句

(1)If和switch語句的區別、轉換

If語句不一定可以轉換為switch語句

Switch語句一定可以轉換為一個多項if語句

(2)for循環控制語句

語法:for(初始化;循環控制條件;循環迭代操作){循環體}

(3)如何使用循環

  • 1.完成一次迭代的代碼
  • 2.確定循環體,查查一次迭代的代碼中哪些需要循環,哪些不需要循環。
  • 3.確定循環條件,判斷循環什麼時候循環,什麼時候不循環
  • 4.選擇循環語句,根據循環條件來選擇循環語句。
  • 5.將循環條件和循環體,代入循環語句的語法結構中。
  • 6.查詢循環是否可以停止。一般情況下,我們的循環都是必須可以停止的。

(4)continue與break的區別

Continue是跳出了一次迭代循環,而break是跳出了整個循環

7. 一維數組

數組:數據類型[] 數組名= new 數據類型[長度];

ArrayList<包裝類>數組名 = new ArrayList<包裝類>();

變量的作用域:我們的變量在特定的範圍內才可以使用

程序的設計方式:

一個是從上到下的設計 從問題的開始 逐步分解成一個小分體最後得到結果

一個是從下到上的設計 從需求的結果開始,一步一步推倒,直到得到已知條件

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

8. 二維數組

數組的定義:數據類型[][] 數組名 = new 數據類型[行的長度][列的長度];

9. 類和對象

對象:在現實生活中客觀存在的任何事物都可以看作是一個對象

類:一系列具有相似特徵的抽象集合

類和對象的關係:類是對象的抽象集合

對象是類的一個個具體的實例化

類中只包含兩個部分:

屬性,對象擁有靜態特徵

方法,對象執行的動作

This關鍵字:This是指向調用對象本身的引用名

構造方法:方法名必須和所在類的類名相同,構造方法沒有返回值類型

什麼時候調用構造方法?

當使用new,創建一個類的對象的時候,調用構造方法。

可不可以不通過構造方法創建對象?

可以,調用對象的Clone的方法

注意:構造方法可以被重載,但不能被重寫

staitc的含義:如果用static修飾屬性或方法,表示該屬性或方法是靜態的屬性,該屬性或方法是屬於該類的屬性,而不是該類的對象的屬性,調用的時候使用類名( . )屬性名調用

String和StringBuffer和StringBuilder的區別

String的值是不可以改變的,StringBuffer和StringBuilder的值是可以改變的

StringBuffer是多線程(新版本) StringBuilder是單線程(舊版本)

變量的作用域:我們的變量在特定的範圍內才可以使用

10. 面向對象程序設計

面向對象的特徵有哪些方面:

  • 封裝:是面向對象方法的重要原則,就是把對象的屬性和方法結合為一個獨立的整體,並儘可能隱藏對象的內部實現細節。
  • 繼承:在java設計中,使用類來對同一類型的對象進行抽象建立模型,其中不同的類也可能有公共的特徵和行為,將這些公共的特徵和行為放在一個類中,被其他類共享,這種建立模型的方式就叫做是繼承
  • 多態:多態就是同一個行為具有多個不同的表現形式或形態的能力
  • 抽象:是將一類對象的共同特徵總結出來構造類的過程,包括數據抽象和行為抽象兩個方面。抽象只關注對象有哪些屬性和行為,並不關注這些行為的細節是什麼

類的抽象和封裝:

抽象類:不能被實例化的類就是抽象類

封裝:一種是屬性封裝,一種是方法的封裝

  • 屬性封裝,是將屬性前加private,提供get、set方法
  • 方法封裝,不需要知道過程,只需要知道參數和結果

封裝的優點:提高了代碼的安全性和易修改性

靜態變量和實例變量的區別:

靜態變量也叫類變量,這種變量前加了static修飾符。可以直接用類名調用,也可以用對象調用。

實例變量也叫對象變量,這種變量沒有加static修飾符。只能通過對象調用。

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

11. 數據庫

DB:存儲數據的倉庫

DB數據庫的簡寫:

DBS 數據庫系統 存儲數據

DBA數據庫管理員 管理數據庫的人員

DBMS數據庫管理系統 方便對數據庫中的數據進行操作

RDBMS關係型數據庫管理系統

DB分為 關係型數據庫和非關係型數據庫

關係型數據庫:MySQL、Oracle

非關係型數據庫:noSQL

關係型數據庫和非關係型數據庫的區別:關係型數據庫不能獨立存在,而非關係型數據庫可以

關係型數據庫:因為該數據庫中的每一張表都不能獨立存在,必須要有關係存在。

  • 完整性約束有哪些:
  • 域約束、主鍵約束、外鍵約束
  • 域約束:取值範圍在特定的範圍之中
  • 主鍵約束:非空唯一
  • 外鍵約束:取值必須要在外鍵表中存在

約束條件:域約束、主鍵約束、外鍵約束、非空約束、唯一約束

主鍵:非空唯一

候選鍵:每一個鍵都可以稱為候選鍵

超鍵:是一個屬性或一組屬性,他唯一的標識了一個關係

外鍵:定義了關係之間的關係

數據庫的三大範式:

  • 第一範式是原子性
  • 第二範式是完全依賴,沒有部分依賴
  • 第三範式是沒有傳遞依賴

JDBC:Java數據庫連接

作用:使用Java語言來連接數據庫中的數據

使用JDBC:

1.加載驅動 class.forName(”com.mysql.jdbc.Driver”);

2.建立連接 Connection con = DriverManager.getConnection(url,userName,PW);

3.執行語句

有變量:PrepareStatement ps = con.getprepareStatement(“?變量”);

無變量:Statement ps = com.preparedStatement(“具體的SQL語句”);

truncate 和delete的區別:

Truncate 1.刪除表中的所有數 2.DDL語言 3.刪除表中的結構

Delete 1.刪除指定的數據 2.DML語言 3.不刪除表的結構

存儲過程:存儲過程,為了減少開發人員編寫SQL語句的重複性

語法:

CREATE PROCEDURE proc_test(

參數

)

BEGIN

方法體

END;

視圖:視圖是原始數據庫數據的一種變換,是查看錶中數據的另外一種方式。

原因:讓不同的人員關注不同的數據

索引:是指對數據庫表中一列或多列的值進行排序的一種結構

索引的作用:使用索引可快速訪問數據庫表中的特定的信息

事務:事務是作為單個邏輯單元執行的一系列操作

單個邏輯單元:通俗的理解為一次操作

事務的特徵:原子性、穩定性、隔離性、可靠性

事務的原因:因為在實際情況中,我們的業務可能是有幾個步驟共同完成的,如果其中一個步驟出現錯誤,那麼我們的業務的結果可能就不正確。

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

12. 繼承

繼承: 在java設計中,使用類來對同一類型的對象進行抽象建立模型,其中不同的類也可能有公共的特徵和行為,將這些公共的特徵和行為放在一個類中,被其他類共享,這種建立模型的方式就叫做是繼承

作用:提高了代碼的維護性、整潔性、複用性

實現:子類中包含父類的特性,子類包含父類的所有屬性和方法。子類中的屬性和方法,父類是不包含的

使用:兩個類之間必須是is-a的關係

這兩個類中有相同的屬性和方法

繼承的關鍵字extends是寫在子類中的

super關鍵字: Super代指父類

方法的重載:是指在同一個類中,兩個方法可以方法名相同,返回值類型相同,參數不同

方法的重寫:是指子類中的方法可以和父類中的方法的方法名相同,返回值類型相同,參數也相同

方法的重載與重寫的關係和區別:

方法重寫發生在通過繼承而相關的不同的類中,而方法重載可以發生在同一個類中,也可以發生在由於繼承而相關的方法名但是參數列表不同的類中

方法重寫具有相同的方法名,返回值類型和參數列表,而方法的重載具有相同的方法名和返回值類型,但是參數列表不同

為什麼不能根據返回值類型來區分重載?

因為JVM是通過路徑、方法名、參數、重載在同一類下,當路徑、方法名、參數相同,無法區分哪個方法

13. 多態

多態是同一個行為具有多個不同的表現形式或形態的能力

多態的使用條件:

  • 使用多態必須要有繼承關係
  • 使用多態的類中,必須重寫父類中的方法
  • 父類引用指向子類對象

什麼是動態綁定、靜態綁定?

在代碼的執行期間是會判斷引用對象的實際類型,根據實際類型調用相應的方法,這種調用方法的行為叫做動態綁定。

靜態綁定:java程序的編譯過程中,方法的調用和代碼的執行過程叫做靜態綁定

動態綁定和靜態綁定的區別

動態綁定是在執行過程中,靜態綁定是在編譯過程中。

多態的原理:我們是通過動態綁定來實現多態的

instanceof的含義 怎樣使用: 是用來運行時指出對象是否是特點類的一個實例

多態的使用、作用、 優點:

使用多態是在初始化類的對象的時候使用。

多態最大的作用和優勢是用來開發框架結構,而不是針對具體的方法的實現

優點:提高了代碼的替換性、擴充性、接口性、靈活性、簡化性

向上轉型:父類引用指向子類對象

向下轉型:把子類的實際類型轉換成父類

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

14. 異常

異常:異常是一種對象,表示阻止正常運行程序執行的錯誤或者情況。

異常的分類:

  • 系統錯誤(Error):是由java虛擬機拋出的,用Error表示。
  • 異常(Exception):是用Exception類表示,它描述的是由程序
  • 和外部環境所引起的錯誤。
  • 運行時異常(RuntimeException):使用RuntimeException類表
  • 示,它描述的是程序設計錯誤。

Error和Exception的區別:Error 錯誤 Exception 異常

怎樣使用異常:

在主方法處理異常

try{

可能產生異常的語句

}catch(異常的類型){

異常後執行的語句

}

throw與throws的區別:

throw寫在方法體,後面跟異常類型的對象

throws寫在方法頭,後面跟異常的類型

finally的子句 含義:

不論是否出現或者是否被捕獲,都可執行某些代碼

final與finally的區別:

被final修飾的變量是一個常量

被final修飾的方法不能被重寫和重載

被final修飾的類不能被繼承

15. 文本IO

流:流是抽象的概念,是對輸入輸出設備的抽象,java程序中,對於數據的輸入/輸出操作都是以“流”的方式進行。設備可以是文件,網絡,內存等。

流的分類:

  • 處理的數據單位不同,可分為:字符流,字節流
  • 數據流方向不同,可分為:輸入流,輸出流
  • 功能不同,可分為:節點流,處理流

什麼是文本IO,為什麼要使用文本IO?

文本IO I = input輸入 O = output輸出

輸入和輸出,是可以在計算機本地的文件中的。

為了使得Java程序有更加廣泛的用途

絕對文件名:是由文件名和它的完整路徑以及驅動器字母組成。

File類的作用:創建、刪除文件或目錄,重命名文件

怎樣使用File類,來重命名文件?

File file = new File(“D:\\\\abc.java”);

If(file.exists()){file.renameTo(new FIle(“d:\\\\123.txt”));}

怎樣使用FIle類,來刪除文件?

File file = new File(“正確的文件名”);

file.delete();

怎樣使用File類,來創建目錄或文件?

創建File文件對象

File file = new File(“需要創建的目錄或文件名(絕對文件名)”);

創建該文件或目錄

  • file.mkdir(); 創建目錄 —— 創建一個
  • file.msdirs(); 創建目錄 —— 一次創建多個

怎樣使用Scanner類,讀取文件?

步驟:創建File類文件

FIle file = new File(“文件的絕對文件名”);

創建輸入流

Scanner input = new Scanner(file);

讀取文件

while(input.next()){} —— 數據庫

While(input.hasNext()){String str = input.nextLine();}

怎樣使用PrintWriter類,來修改文件?

步驟:創建File類

File file = new File(“文件的絕對文件名”);

創建PrintWriter類

PrintWriter pw = new PrintWriter(file);

寫入:

pw.println(); pw.print(); pw.printf();

和控制檯輸出是一樣的。System.out.println();

關閉 :pw.close();

怎樣自動關閉文件資源?

使用try(){}來自動關閉,需要和try-catch語句區分開來

try(PrintWriter pw = new PrintWriter(f1)){

pw.println(); pw.print(); pw.printf();

//和控制檯輸出是一樣的。System.out.println();

}

Scanner類的工作原理:

Scanner類中的方法都佳作是標記方法

這些方法讀取數據的時候會根據標記來讀取

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

16. 抽象和接口

抽象類:不能實例化的類就是抽象類

抽象類的特點:不能被實例化

抽象類的用途:作為父類被子類繼承

定義抽象類的語法:在方法頭中使用abstract

抽象類的構造方法、屬性、普通方法怎樣定義?

構造方法:Protected 類名(屬性){}

屬性:和普通類一樣

普通方法:和普通類一樣——可以包含抽象方法, 也可以包含普通方法。

四種訪問修飾符:

訪問權限 本類 本包 子類 其他包

Public yes yes yes yes

Protect yes yes yes

Default yes yes

Private yes

為什麼要用抽象方法? 提高了代碼的重用性和易維護性

抽象類的注意點:

  • 抽象方法不能包含在非抽象類中
  • 抽象類是不能使用new操作符來初始化的
  • 包含抽象方法的類必須是抽象類的
  • 子類可以覆蓋父類的方法並將它定義為abstract
  • 即使子類的父類是具體的,這個子類也可以是抽象的
  • 不能使用new操作符從一個抽象類創建一個實例

但是抽象類可以用作是一種數據類

接口: 接口是一種與類相似的結構,只包含常量和抽象方法。

接口的用處:

  • (1)通過接口可以實現不相關類的相同行為,而不需要了解對象所對應的類。
  • (2)通過接口可以指明多個類需要實現的方法。
  • (3)通過接口可以瞭解對象的交互界面,而不需瞭解對象所對應的類。

接口繼承: 就是類實現了接口,就叫做是接口繼承

public class 類名{}

public interface 接口名{

靜態常量;

抽象方法;

}

泛型接口: 泛型:什麼類型都可以

泛型接口:適用於任何數據類型的接口。

//定義泛型接口

public interface 接口名<E>{

靜態常量;

抽象方法;

}

//如果類要實現該接口的時候

public class 類名 implements接口名{}

//如果類實現的接口是泛型接口

public class 類名 implements接口名<具體的數據類型>{}

16.2.5.Comparable接口的作用和用法

java已經定義好的一個接口,提供了一個抽象方法,用於比較

public interface Comparable<類型>{

public int compareTo(類型 對象名);

}

16.2.6.Coneable接口的作用和用法

可以克隆一個對象,表示該類可以被複制

16.2.7.怎樣自定義一個接口

[修飾符] interface接口名 [extends父接口名列表]{

[public] [static] [final] 常量;

[public] [abstract] 方法;

}

接口和抽象類的區別?

"

1. Java

Java的特點:簡單的、面向對象的、分佈式的、解釋型的、健壯的、安全的、可移植的、高性能的、多線程的和動態的。

軟件的生命週期:需求、設計、編碼、測試、實施、運維(運行和維護)

Java語言命名規則:

  • 必須是由字母、數字、下劃線、或美元符號構成的字符序列
  • 必須是由字符、下劃線或美元符號開頭,不能以數字開頭
  • 不能是關鍵字
  • 不能是true或false
  • 可以任意長度

Java命名規則

  • 類名:每個單詞的首字母大寫
  • 變量名:第一個單詞的首字母大寫,後面的單詞的首字母大寫
  • 方法名:和變量名一樣
  • 常量名:每個字母都大寫
Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

2. 為什麼說java語言被稱為跨平臺語言

根據java的工作原理,因為我們的.java源文件通過編譯器編譯成以後綴名為.class的可執行文件,然後將.class文件和java庫文件一起從JVM中運行,這樣就可以得到運行結果,又因為java程序可以在任意一個裝有java虛擬機的計算機上運行,這樣就實現了java語言跨平臺運行。

Java語言的工作環境:

一般的家用pc機是不可以直接編輯java程序的。需要先配置java的環境變量才可以。

配置java開發環境變量的步驟:

1. 下載和安裝JDK和JRE,JDK和JRE一般不安裝到同一個文件夾下

2. 配置環境變量

Path jdk的安裝路徑\\bin;jre的安裝路徑\\bin;

Class_Path jdk的安裝路徑\\lib;jdk安裝路徑\\lib\\dt.jar;jdk安裝路徑\\lib\\tools.jar;

檢測環境變量配置是否成功進入DOS界面,輸入命令JavaJavacJava -version

看運行是否有錯。如果成功,則表示java環境變量配置成功。

3. java語言規範

JDK:java開發工具包 作用:編寫和測試java程序

JRE:java開發環境 作用:運行java程序

Jdk和jre的區別:jdk包含了jre。

API:應用程序接口。

API文檔:裡面包含了java已經定義好的類的屬性和方法

IDE:集成開發環境

JavaSE:java標準版 可以用來開發客戶端的應用程序

JavaEE:java企業版 可以用來開發服務器端的應用程序

javaME:java微型版 可以用來開發移動設備的應用程序

4. 基本數據類型

存儲範圍 取值範圍 相應的包裝類

byte 8位 +-2的7次方 Byte

short 16位 +-2的15次方 Short

int 32位 +-2的31次方 Integer

long 64位 +-2的63次方 Long

float Float

double Double

char Character

boolean Boolean

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

5. 包裝類

(1)什麼是包裝類?

對基本數據類型提供相應的類,這個類就是包裝類

(2)包裝類的作用?

在數據類型之間的強制轉換中不會出錯

(3)為什麼要使用包裝類?

由於在強制類型的轉換中可能會出現錯誤,比如int轉String,為了避免錯誤所以引用包裝類

(4)什麼是自動裝箱?

將基本數據類型自動的轉換為包裝類的對象,這就是自動裝箱

(5)什麼是自動拆箱?

將包裝類的對象自動的轉換為基本數據類型,這就是自動拆箱

6. 條件控制語句

(1)If和switch語句的區別、轉換

If語句不一定可以轉換為switch語句

Switch語句一定可以轉換為一個多項if語句

(2)for循環控制語句

語法:for(初始化;循環控制條件;循環迭代操作){循環體}

(3)如何使用循環

  • 1.完成一次迭代的代碼
  • 2.確定循環體,查查一次迭代的代碼中哪些需要循環,哪些不需要循環。
  • 3.確定循環條件,判斷循環什麼時候循環,什麼時候不循環
  • 4.選擇循環語句,根據循環條件來選擇循環語句。
  • 5.將循環條件和循環體,代入循環語句的語法結構中。
  • 6.查詢循環是否可以停止。一般情況下,我們的循環都是必須可以停止的。

(4)continue與break的區別

Continue是跳出了一次迭代循環,而break是跳出了整個循環

7. 一維數組

數組:數據類型[] 數組名= new 數據類型[長度];

ArrayList<包裝類>數組名 = new ArrayList<包裝類>();

變量的作用域:我們的變量在特定的範圍內才可以使用

程序的設計方式:

一個是從上到下的設計 從問題的開始 逐步分解成一個小分體最後得到結果

一個是從下到上的設計 從需求的結果開始,一步一步推倒,直到得到已知條件

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

8. 二維數組

數組的定義:數據類型[][] 數組名 = new 數據類型[行的長度][列的長度];

9. 類和對象

對象:在現實生活中客觀存在的任何事物都可以看作是一個對象

類:一系列具有相似特徵的抽象集合

類和對象的關係:類是對象的抽象集合

對象是類的一個個具體的實例化

類中只包含兩個部分:

屬性,對象擁有靜態特徵

方法,對象執行的動作

This關鍵字:This是指向調用對象本身的引用名

構造方法:方法名必須和所在類的類名相同,構造方法沒有返回值類型

什麼時候調用構造方法?

當使用new,創建一個類的對象的時候,調用構造方法。

可不可以不通過構造方法創建對象?

可以,調用對象的Clone的方法

注意:構造方法可以被重載,但不能被重寫

staitc的含義:如果用static修飾屬性或方法,表示該屬性或方法是靜態的屬性,該屬性或方法是屬於該類的屬性,而不是該類的對象的屬性,調用的時候使用類名( . )屬性名調用

String和StringBuffer和StringBuilder的區別

String的值是不可以改變的,StringBuffer和StringBuilder的值是可以改變的

StringBuffer是多線程(新版本) StringBuilder是單線程(舊版本)

變量的作用域:我們的變量在特定的範圍內才可以使用

10. 面向對象程序設計

面向對象的特徵有哪些方面:

  • 封裝:是面向對象方法的重要原則,就是把對象的屬性和方法結合為一個獨立的整體,並儘可能隱藏對象的內部實現細節。
  • 繼承:在java設計中,使用類來對同一類型的對象進行抽象建立模型,其中不同的類也可能有公共的特徵和行為,將這些公共的特徵和行為放在一個類中,被其他類共享,這種建立模型的方式就叫做是繼承
  • 多態:多態就是同一個行為具有多個不同的表現形式或形態的能力
  • 抽象:是將一類對象的共同特徵總結出來構造類的過程,包括數據抽象和行為抽象兩個方面。抽象只關注對象有哪些屬性和行為,並不關注這些行為的細節是什麼

類的抽象和封裝:

抽象類:不能被實例化的類就是抽象類

封裝:一種是屬性封裝,一種是方法的封裝

  • 屬性封裝,是將屬性前加private,提供get、set方法
  • 方法封裝,不需要知道過程,只需要知道參數和結果

封裝的優點:提高了代碼的安全性和易修改性

靜態變量和實例變量的區別:

靜態變量也叫類變量,這種變量前加了static修飾符。可以直接用類名調用,也可以用對象調用。

實例變量也叫對象變量,這種變量沒有加static修飾符。只能通過對象調用。

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

11. 數據庫

DB:存儲數據的倉庫

DB數據庫的簡寫:

DBS 數據庫系統 存儲數據

DBA數據庫管理員 管理數據庫的人員

DBMS數據庫管理系統 方便對數據庫中的數據進行操作

RDBMS關係型數據庫管理系統

DB分為 關係型數據庫和非關係型數據庫

關係型數據庫:MySQL、Oracle

非關係型數據庫:noSQL

關係型數據庫和非關係型數據庫的區別:關係型數據庫不能獨立存在,而非關係型數據庫可以

關係型數據庫:因為該數據庫中的每一張表都不能獨立存在,必須要有關係存在。

  • 完整性約束有哪些:
  • 域約束、主鍵約束、外鍵約束
  • 域約束:取值範圍在特定的範圍之中
  • 主鍵約束:非空唯一
  • 外鍵約束:取值必須要在外鍵表中存在

約束條件:域約束、主鍵約束、外鍵約束、非空約束、唯一約束

主鍵:非空唯一

候選鍵:每一個鍵都可以稱為候選鍵

超鍵:是一個屬性或一組屬性,他唯一的標識了一個關係

外鍵:定義了關係之間的關係

數據庫的三大範式:

  • 第一範式是原子性
  • 第二範式是完全依賴,沒有部分依賴
  • 第三範式是沒有傳遞依賴

JDBC:Java數據庫連接

作用:使用Java語言來連接數據庫中的數據

使用JDBC:

1.加載驅動 class.forName(”com.mysql.jdbc.Driver”);

2.建立連接 Connection con = DriverManager.getConnection(url,userName,PW);

3.執行語句

有變量:PrepareStatement ps = con.getprepareStatement(“?變量”);

無變量:Statement ps = com.preparedStatement(“具體的SQL語句”);

truncate 和delete的區別:

Truncate 1.刪除表中的所有數 2.DDL語言 3.刪除表中的結構

Delete 1.刪除指定的數據 2.DML語言 3.不刪除表的結構

存儲過程:存儲過程,為了減少開發人員編寫SQL語句的重複性

語法:

CREATE PROCEDURE proc_test(

參數

)

BEGIN

方法體

END;

視圖:視圖是原始數據庫數據的一種變換,是查看錶中數據的另外一種方式。

原因:讓不同的人員關注不同的數據

索引:是指對數據庫表中一列或多列的值進行排序的一種結構

索引的作用:使用索引可快速訪問數據庫表中的特定的信息

事務:事務是作為單個邏輯單元執行的一系列操作

單個邏輯單元:通俗的理解為一次操作

事務的特徵:原子性、穩定性、隔離性、可靠性

事務的原因:因為在實際情況中,我們的業務可能是有幾個步驟共同完成的,如果其中一個步驟出現錯誤,那麼我們的業務的結果可能就不正確。

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

12. 繼承

繼承: 在java設計中,使用類來對同一類型的對象進行抽象建立模型,其中不同的類也可能有公共的特徵和行為,將這些公共的特徵和行為放在一個類中,被其他類共享,這種建立模型的方式就叫做是繼承

作用:提高了代碼的維護性、整潔性、複用性

實現:子類中包含父類的特性,子類包含父類的所有屬性和方法。子類中的屬性和方法,父類是不包含的

使用:兩個類之間必須是is-a的關係

這兩個類中有相同的屬性和方法

繼承的關鍵字extends是寫在子類中的

super關鍵字: Super代指父類

方法的重載:是指在同一個類中,兩個方法可以方法名相同,返回值類型相同,參數不同

方法的重寫:是指子類中的方法可以和父類中的方法的方法名相同,返回值類型相同,參數也相同

方法的重載與重寫的關係和區別:

方法重寫發生在通過繼承而相關的不同的類中,而方法重載可以發生在同一個類中,也可以發生在由於繼承而相關的方法名但是參數列表不同的類中

方法重寫具有相同的方法名,返回值類型和參數列表,而方法的重載具有相同的方法名和返回值類型,但是參數列表不同

為什麼不能根據返回值類型來區分重載?

因為JVM是通過路徑、方法名、參數、重載在同一類下,當路徑、方法名、參數相同,無法區分哪個方法

13. 多態

多態是同一個行為具有多個不同的表現形式或形態的能力

多態的使用條件:

  • 使用多態必須要有繼承關係
  • 使用多態的類中,必須重寫父類中的方法
  • 父類引用指向子類對象

什麼是動態綁定、靜態綁定?

在代碼的執行期間是會判斷引用對象的實際類型,根據實際類型調用相應的方法,這種調用方法的行為叫做動態綁定。

靜態綁定:java程序的編譯過程中,方法的調用和代碼的執行過程叫做靜態綁定

動態綁定和靜態綁定的區別

動態綁定是在執行過程中,靜態綁定是在編譯過程中。

多態的原理:我們是通過動態綁定來實現多態的

instanceof的含義 怎樣使用: 是用來運行時指出對象是否是特點類的一個實例

多態的使用、作用、 優點:

使用多態是在初始化類的對象的時候使用。

多態最大的作用和優勢是用來開發框架結構,而不是針對具體的方法的實現

優點:提高了代碼的替換性、擴充性、接口性、靈活性、簡化性

向上轉型:父類引用指向子類對象

向下轉型:把子類的實際類型轉換成父類

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

14. 異常

異常:異常是一種對象,表示阻止正常運行程序執行的錯誤或者情況。

異常的分類:

  • 系統錯誤(Error):是由java虛擬機拋出的,用Error表示。
  • 異常(Exception):是用Exception類表示,它描述的是由程序
  • 和外部環境所引起的錯誤。
  • 運行時異常(RuntimeException):使用RuntimeException類表
  • 示,它描述的是程序設計錯誤。

Error和Exception的區別:Error 錯誤 Exception 異常

怎樣使用異常:

在主方法處理異常

try{

可能產生異常的語句

}catch(異常的類型){

異常後執行的語句

}

throw與throws的區別:

throw寫在方法體,後面跟異常類型的對象

throws寫在方法頭,後面跟異常的類型

finally的子句 含義:

不論是否出現或者是否被捕獲,都可執行某些代碼

final與finally的區別:

被final修飾的變量是一個常量

被final修飾的方法不能被重寫和重載

被final修飾的類不能被繼承

15. 文本IO

流:流是抽象的概念,是對輸入輸出設備的抽象,java程序中,對於數據的輸入/輸出操作都是以“流”的方式進行。設備可以是文件,網絡,內存等。

流的分類:

  • 處理的數據單位不同,可分為:字符流,字節流
  • 數據流方向不同,可分為:輸入流,輸出流
  • 功能不同,可分為:節點流,處理流

什麼是文本IO,為什麼要使用文本IO?

文本IO I = input輸入 O = output輸出

輸入和輸出,是可以在計算機本地的文件中的。

為了使得Java程序有更加廣泛的用途

絕對文件名:是由文件名和它的完整路徑以及驅動器字母組成。

File類的作用:創建、刪除文件或目錄,重命名文件

怎樣使用File類,來重命名文件?

File file = new File(“D:\\\\abc.java”);

If(file.exists()){file.renameTo(new FIle(“d:\\\\123.txt”));}

怎樣使用FIle類,來刪除文件?

File file = new File(“正確的文件名”);

file.delete();

怎樣使用File類,來創建目錄或文件?

創建File文件對象

File file = new File(“需要創建的目錄或文件名(絕對文件名)”);

創建該文件或目錄

  • file.mkdir(); 創建目錄 —— 創建一個
  • file.msdirs(); 創建目錄 —— 一次創建多個

怎樣使用Scanner類,讀取文件?

步驟:創建File類文件

FIle file = new File(“文件的絕對文件名”);

創建輸入流

Scanner input = new Scanner(file);

讀取文件

while(input.next()){} —— 數據庫

While(input.hasNext()){String str = input.nextLine();}

怎樣使用PrintWriter類,來修改文件?

步驟:創建File類

File file = new File(“文件的絕對文件名”);

創建PrintWriter類

PrintWriter pw = new PrintWriter(file);

寫入:

pw.println(); pw.print(); pw.printf();

和控制檯輸出是一樣的。System.out.println();

關閉 :pw.close();

怎樣自動關閉文件資源?

使用try(){}來自動關閉,需要和try-catch語句區分開來

try(PrintWriter pw = new PrintWriter(f1)){

pw.println(); pw.print(); pw.printf();

//和控制檯輸出是一樣的。System.out.println();

}

Scanner類的工作原理:

Scanner類中的方法都佳作是標記方法

這些方法讀取數據的時候會根據標記來讀取

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?

16. 抽象和接口

抽象類:不能實例化的類就是抽象類

抽象類的特點:不能被實例化

抽象類的用途:作為父類被子類繼承

定義抽象類的語法:在方法頭中使用abstract

抽象類的構造方法、屬性、普通方法怎樣定義?

構造方法:Protected 類名(屬性){}

屬性:和普通類一樣

普通方法:和普通類一樣——可以包含抽象方法, 也可以包含普通方法。

四種訪問修飾符:

訪問權限 本類 本包 子類 其他包

Public yes yes yes yes

Protect yes yes yes

Default yes yes

Private yes

為什麼要用抽象方法? 提高了代碼的重用性和易維護性

抽象類的注意點:

  • 抽象方法不能包含在非抽象類中
  • 抽象類是不能使用new操作符來初始化的
  • 包含抽象方法的類必須是抽象類的
  • 子類可以覆蓋父類的方法並將它定義為abstract
  • 即使子類的父類是具體的,這個子類也可以是抽象的
  • 不能使用new操作符從一個抽象類創建一個實例

但是抽象類可以用作是一種數據類

接口: 接口是一種與類相似的結構,只包含常量和抽象方法。

接口的用處:

  • (1)通過接口可以實現不相關類的相同行為,而不需要了解對象所對應的類。
  • (2)通過接口可以指明多個類需要實現的方法。
  • (3)通過接口可以瞭解對象的交互界面,而不需瞭解對象所對應的類。

接口繼承: 就是類實現了接口,就叫做是接口繼承

public class 類名{}

public interface 接口名{

靜態常量;

抽象方法;

}

泛型接口: 泛型:什麼類型都可以

泛型接口:適用於任何數據類型的接口。

//定義泛型接口

public interface 接口名<E>{

靜態常量;

抽象方法;

}

//如果類要實現該接口的時候

public class 類名 implements接口名{}

//如果類實現的接口是泛型接口

public class 類名 implements接口名<具體的數據類型>{}

16.2.5.Comparable接口的作用和用法

java已經定義好的一個接口,提供了一個抽象方法,用於比較

public interface Comparable<類型>{

public int compareTo(類型 對象名);

}

16.2.6.Coneable接口的作用和用法

可以克隆一個對象,表示該類可以被複制

16.2.7.怎樣自定義一個接口

[修飾符] interface接口名 [extends父接口名列表]{

[public] [static] [final] 常量;

[public] [abstract] 方法;

}

接口和抽象類的區別?

Java語言程序設計(基礎篇)有這16個知識點,你都弄懂了嗎?


"

相關推薦

推薦中...