JAVA複習 (期末重點考點總結)

第一章 Java語言概述:

Java虛擬機的作用:負責執行指令,還要管理數據,內存,存儲器

Java運行機制:將java源程序編譯成字節碼文件,然後由java虛擬機來執行這個字節碼文件
在這裏插入圖片描述

JDK的配置:
Path:指定Java的類路徑
ClasspathJDK命令搜索路徑

Java API各種包作用
Java.util 是JAVA的utility工具包
java.lang 是JAVA的language核心語言包
java.awt 是JAVA的abstract window toolkit,抽象窗口工具包
java.applet創建APPLET的必須包
java.NETJAVA有關網絡操作的包
java.ioJAVA的輸入輸出流的包
java.sqlJAVA的數據庫操作包
javax.swing新的界面包
javax 開頭的是擴展包

Java程序的開發過程:編輯源碼、編譯、執行全過程,會用到的編譯器、解釋器程序是什麼?
用到的JDK編譯器:javac ; 解釋器程序是:jdk或jre目錄下bin目錄中的java.exe文件

Java源文件的命名規則
在這裏插入圖片描述


第二章 Java語言基礎:

數據類型的分類以及各種數據類型佔用長度(常量使用 final定義):

數據類型的分類:
在這裏插入圖片描述各種數據類型佔用長度
在這裏插入圖片描述

Java標識符的命名規則
只能用4種:字符 美元符($) 下劃線(_) 數字 , 但是數字不能放在第一位

字符類型 與 整數之間的關係?
字符型數據在做數字運算時實際上是對字符本身對應的ASCII碼進行相應的數值運算。

字符與字符串的區別:

Ascll:ASCII 只有128個字符,表示英文字母的大小寫、數字和一些符號

UniCode:Unicode就是將一些語言(漢字等)統一到一套編碼格式中,通常兩個字節表示一個字符,而ASCII是一個字節表示一個字符

數據類型的轉換:
自動類型轉換
在這裏插入圖片描述

強制類型轉換:
在這裏插入圖片描述


第三章 面向對象程序設計基礎:

類與對象的區別:
(1)是一類事務,是根據一般性抽象出來的;例如:人; 交通工具。
(2)對象是類的一個特例、實例。例如:小轎車、卡車、公共汽車等。對象通過new關鍵字,完成實例化(例如: Student stu = new Student() ; stu 就是Student類的一個實例)。
(3)new關鍵字,其實本質就是申請分配內存,使Student類中的變量、方法都對應分配的內存單元。

類的成員變量、局部變量的作用範圍:
在這裏插入圖片描述

類的成員方法定義、方法返回值、如何調用?
方法定義和方法返回值:
在這裏插入圖片描述
方法調用的過程,其實就是將實參賦值給形參,形參進入方法體內參與運算,最後返回結果的過程。

同一個類,可以創建多個對象,這多個對象之間是各自獨立的

方法重載
是指在一個類中,有多個同名的方法,但它們的參數必須不同!參數不同可以是:參數個數不同;或者個數相同時,參數類型不同。

方法重寫
一個子類繼承一個父類的時候,可以重寫覆蓋原來父類裏面的方法,當然這個方法和父類的方法名稱一定要相同,參數也要相同

面向對象的三特性?
封裝性
在這裏插入圖片描述
繼承性
在這裏插入圖片描述
多態性
在這裏插入圖片描述

Super:代表了父類對象,因此可以實現對父類成員變量、方法的訪問

this:表示當前對象this只能用於構造方法和實例方法中!不能用於類方法(靜態方法 - 有static限定詞)。
例如
當this出現在構造方法中時,this代表的是,用此構造方法創建出來的那個對象;
當this出現在實例方法中時,this代表的是,調用此方法的那個對象;


第四章 數組與字符串:

一維數組的定義,如何去定義?有幾種方法?
一般形式: 數據類型 數組名[ ] = new 數據類型[數組容量];
Int scores[ ] = new int[10];
int[ ] scores = new int[10];

如何獲取一維數組長度
數組名.length

如何獲取二維數組中的行數
數組名.length

如何獲取二維數組中的列數
數組名[0].length

如何獲取二維數組長度
數組名.length * 數組名[0].length

比較字符串中 == equals的區別
在這裏插入圖片描述
在這裏插入圖片描述

Split的用法(. 和 | 分割時前面要用 \
在這裏插入圖片描述在這裏插入圖片描述

CharAT(下標從0開始)

在這裏插入圖片描述

怎麼把字符串轉成整數
Int x = Integer.parseInt(str);
在這裏插入圖片描述怎麼把字符串轉成double型
在這裏插入圖片描述

怎麼把數值轉成字符串
String s2 = String.valueOf(3000);
在這裏插入圖片描述
字符串怎麼轉爲字節數組
byte b[ ] = “abcdefg”.getBytes();
(輸出爲ASCLL碼)
在這裏插入圖片描述Pattern 和 Matcher 用法:
Pattern :用 compile 方法構造正則表達式模式對象

Matcher:Pattern類的Matcher方法構造匹配器對象
在這裏插入圖片描述


第五章 圖形用戶界面設計:

awt 組件與 swing 組件的區別?二者關係?常用的是哪個?
swing 組件是 awt 的子類,swing有更強的實用性。

JFrame是頂層容器JPanel是中間容器JButton等等其他的稱爲組件;

JFrameJPanelJButton這3者是哪個包中的?它們之間是誰套着誰? Frame Panel Button 是哪個包的?

JFrame JPanel JButton三者屬於swing包中

JFrame可以添加中間容器組件Panel可以添加組件

FramePanel Button屬於awt

界面佈局類有哪些?各種佈局的表現形式是怎樣的
瞭解五種佈局方式:FlowLayout , BorderLayout , CardLayout , GridLayout , GridBagLayout。

FlowLayout 順序放置 ---- 從左到右、 從上到下, 居中setLayout( new FlowLayout() );

BorderLayout 整個窗體,分爲5個區域—North、South、West、East、 Center

在這裏插入圖片描述

CardLayout 一個窗體中,可以包括多個卡片,一個時刻,只能一個卡片可見。

GridLayout窗體上,可設置x行y列的網格佈局。每個格子一樣大小。組件一行一行從左到右放到格子中。

GridBagLayout 對象維持一個動態的矩形單元網格,每個組件佔用一個或多個這樣的單元,該單元被稱爲顯示區域。

菜單中相關的幾個類:JMenBar、JMenu、JMenuItem,它們之間誰包含誰?
JMenu — 菜單,一個容器,裏面可以帶多個 JMenuItem; JMenu對象,需要加入到JMenuBar 中。

JMenuItem — 菜單項,一項項加入到 JMenu對象中去。

對話框的幾種不同顯示形式,分別對應不同的方法。
模態框(Modal Dialog):此對話框激活時,其他窗體都不能操作。
非模態框(Non-modal Dialog):可在此對話框窗體與其他窗體之間,隨意切換。


第6章 Java圖形與事件處理

圖形編程中座標系是怎樣的?
Java中圖形座標系:座標原點在左上角,單位:像素。
在這裏插入圖片描述

繪圖方法是paint() , 只能在paint()方法中繪圖。

Graphics常用的繪圖方法:
在這裏插入圖片描述

內部類、 匿名類是做什麼的? 怎麼來創建並應用它們?
內部類(Inner Class):在一個類的類體中定義的類。

內部類的一些特性
(1)內部類對象,可以訪問外部類的成員變量和方法,包括私有的成員;
(2)實現事件監聽器時,一般都採用內部類、匿名類充當監視器類。

什麼時候使用匿名類?
如果一個內部類只被使用一次,且它還需繼承一個父類實現一個接口,可以使用匿名類

匿名類的特點類沒有名字,也就沒有構造方法。只能顯式地調用一個父類的無參構造方法(或new xxxListener接口)、並重寫父類(接口)方法。


第七章 多線程與異常處理:

Java中異常處理相關的幾個關鍵字:try、catch、finally,throws,throw它們是怎麼使用的?用在哪裏?

定義方法時,可以使用 throws 關鍵字拋出異常

方法體內使用 throw 拋出異常

使用 try 執行一段代碼,當出現異常後,停止後續代碼的執行,跳至 catch 語句塊

使用 catch 捕獲指定的異常,並進行處理

finally 語句塊表示的語義是在 try、catch 語句塊執行結束後,最後一定會被執行

線程的生命週期,5種狀態:創建就緒運行阻塞死亡

創建線程 : 通過繼承Thread:
在這裏插入圖片描述

創建線程: 通過 Runnable接口

在這裏插入圖片描述


第八章 文件的輸入輸出流:

何謂輸入?何謂輸出?
以當前程序爲中心,要讀入到程序內存中的,稱爲 輸入流

從程序內存中寫出去的,稱爲輸出流

網絡通信中,以當前機器(程序)爲中心進入的信息,稱爲輸入流要發出去的信息,稱爲輸出流

File類的常用方法、它既可以代表文件,也可以代表目錄,如何創建文件?如何創建目錄?

創建File類的對象— 使用File類的幾種構造方法
例1: File f1 = new File(“d:\abc”); // f1 代表目錄 d:\abc

例2: File f2 = new File(“d:\abc\1.txt”); // f2 代表文件

例3: File f3 = new File(“d:\abc”, “1.txt”); // 路徑 和 文件名 分開

例4: File f4 = new File(f1, “1.txt”); // 路徑用一個File對象表示

字節流 對應的2個類分別是什麼?
FileInputStream ,FileOutputStream
在這裏插入圖片描述
字符流 對應的2個類分別是什麼?
FileReader FileWriter
在這裏插入圖片描述
數據輸入輸出流,提供了readUTFwriteUTF 方法,可用於發送接收消息。

對象流,可以將對象序列化爲文件 — 要求類實現哪個接口? Serializable接口


第九章 網絡通信:

IPv4 的IP地址都是32位地址
IPv6 的IP地址是128位無符號整數。

IPv6出現解決的問題: IPv4地址不夠用

什麼是套接字編程?包括什麼?
TCP/IP通信協議中,IP地址+端口號,就是套接字(Socket)

TCP與UDP協議區別是什麼?
TCP:提供的是面向連接可靠的數據傳輸。

UDP:提供的是無連接的不可靠的數據傳輸


第十章 java數據庫連接:

JDBC API是什麼?有什麼作用?
API應用程序接口,Application Program Interface)。
作用使我們能夠用純Java來編寫數據庫應用程序。

如何利用JDBC API連接數據庫,實現增、刪、改、查等任務?

一般步驟
(a)加載和註冊驅動程序
加載驅動程序 —
需要將MySQL的mysql-connector-java-5.1.47.jar 加入項目

Class.forName("com.mysql.jdbc.Driver"); 

(b)連接數據庫
// 連接數據庫

Connection conn = DriverManager.getConnection( 
"jdbc:mysql://127.0.0.1:3306/javadb", "root", "123456");

(c)向數據庫發送SQL語句並處理結果

// statement用來執行SQL語句
Statement statement = conn.createStatement();
//執行語句
statement.executeUpdate(sql);    
//關閉數據庫的連接
conn.close();	 

簡單的SQL語句及應用。(增刪改查)
(執行時,把sql語句放入上面步驟c的 //執行語句 中的sql位置即可)

查看錶中所有信息(按表內列的順序操作,下同)

String sql = "select * from teacher";

插入數據

String sql = "insert into teacher values('20051102001', '張老師','13802287655', 35)";

更新(修改)數據

String sql = "update teacher set age=38 where id='20051102001' ";

刪除數據

String sql = "delete from teacher where id='20051102001' ";
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章