面向對象,常用類,集合,異常,JDBC,mysql數據庫內容的復習,

1,面向對象

面向對象與面向過程對比

面向過程:關注過程,適合解決簡單直接的問題,代碼結構以函數為單位,如C語言。
面向對象:關注類,適合解決復雜問題更加適合解決復雜的項目中的問題等等,

下面是一些常用類

Object類

所有Java類的祖先,包含`toString()`和`equals()`等方法。

Arrays類

提供數組操作工具,如排序、復制、搜索等。

String類

不可變的字符序列,用于文本處理。

Math類

提供數學運算的方法。

Date類

表示時間點的類。

2,集合

Collection接口

- 定義了存取一組對象的方法,`List`和`Set`為其子接口。

?List接口

-有序集合,允許重復元素,有`ArrayList`、`LinkedList`、`Vector`實現類。

Set接口

-無序集合,不允許重復元素,有`HashSet`、`TreeSet`實現類。

Map接口

鍵值對集合,鍵唯一,有`HashMap`、`TreeMap`、`HashTable`實現類。

3,異常

Throwable體系

?`Error`:系統級錯誤,如`StackOverflowError`。
`Exception`:可處理的異常,如`IOException`。

異常處理

使用`try-catch-finally`語句塊處理異常,`throw`用于拋出異常,`throws`用于聲明方法可能拋出的異常。

4,JDBC

Java Database Connectivity,用于Java應用程序與各種數據庫通信的標準API。

MySQL數據庫

概念

數據庫(DB):存儲數據的容器。
DBMS:數據庫管理系統,用于創建和管理數據庫。

5,SQL

結構化查詢語言,用于數據定義、操作和控制。
DDL:數據定義語言,用于創建和修改數據庫結構。
DML:數據操縱語言,用于數據的插入、更新和刪除。
DQL:數據查詢語言,用于檢索數據。

DDL

創建、刪除、修改數據庫和表結構的SQL語句。

DML

插入(INSERT)、更新(UPDATE)、刪除(DELETE)數據的SQL語句。

DQL

查詢(SELECT)數據的SQL語句。

多表設計與關聯查詢

設計多張相關聯的表,通過JOIN語句進行數據關聯查詢等等

Java語言面向對象的特點

封裝

封裝是面向對象編程的核心概念之一,它涉及將數據和操作這些數據的方法封裝在一起,隱藏內部實現細節。通過封裝,我們可以限制對類內部數據的直接訪問,從而保護數據的安全性和完整性。例如:我們可以定義一個`Car`類,其中包含`speed`屬性和`accelerate`方法,但`speed`屬性被聲明為`private`,只有通過`accelerate`方法才能改變速度,確保了速度值的有效性和安全性。


public class Car {private int speed;public void accelerate(int delta) {speed += delta;}
}

繼承

繼承是面向對象編程中的另一個重要概念,它允許創建一個新的類(子類),該類繼承了現有類(父類)的屬性和方法。繼承提供了代碼復用的途徑,使得子類可以重用父類的代碼,并在此基礎上進行擴展或覆蓋。

例如:`ElectricCar`類可以從`Car`類繼承,同時添加或覆蓋特定于電動汽車的功能。
?

public class ElectricCar extends Car {private int batteryLevel;@Overridepublic void accelerate(int delta) {if (batteryLevel > 0) {super.accelerate(delta);} else {System.out.println("Battery empty, cannot accelerate.");}}
}

多態

多態是面向對象編程中一個強大的特性,它允許父類引用指向子類對象。多態性允許在運行時決定調用哪個方法,這意味著一個接口可以有多種實現。例如,`Vehicle`接口可以被`Car`和`Bicycle`類實現,而`startEngine`方法在每個類中會有不同的實現。

interface Vehicle {void startEngine();
}class Car implements Vehicle {@Overridepublic void startEngine() {System.out.println("Starting car engine...");}
}class Bicycle implements Vehicle {@Overridepublic void startEngine() {System.out.println("Pedaling to start...");}
}


?

Java核心類和集合框架

常用類

Java提供了一系列內置的類,用于處理基本數據類型、字符串、數學運算、日期和時間、文件操作等。例如,`String`類提供了處理文本字符串的強大功能,`Math`類提供了基本的數學運算,`File`類用于文件和目錄操作。

集合框架

Java的集合框架提供了一套用于存儲和操作對象集合的標準接口和實現。主要包括:

`List`:有序的集合,可以包含重復元素,如`ArrayList`和`LinkedList`。
`Set`:不重復的元素集合,如`HashSet`和`TreeSet`。
`Map`:鍵值對的集合,如`HashMap`和`TreeMap`。

這些集合類提供了高效的數據存儲和檢索機制,適用于不同的場景和需求。

異常處理

Java的異常處理機制允許程序以優雅的方式處理錯誤和異常情況,防止程序崩潰并提供有用的錯誤信息。異常處理主要通過`try-catch`塊實現,其中`try`塊包含可能拋出異常的代碼,而`catch`塊用于處理這些異常。此外,`finally`塊用于執行清理操作,無論是否發生異常都會執行。

try {// Code that may throw an exception
} catch (IOException e) {// Handle IOException
} finally {// Cleanup code
}



?

本文來自互聯網用戶投稿,該文觀點僅代表作者本人,不代表本站立場。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。
如若轉載,請注明出處:http://www.pswp.cn/diannao/37835.shtml
繁體地址,請注明出處:http://hk.pswp.cn/diannao/37835.shtml
英文地址,請注明出處:http://en.pswp.cn/diannao/37835.shtml

如若內容造成侵權/違法違規/事實不符,請聯系多彩編程網進行投訴反饋email:809451989@qq.com,一經查實,立即刪除!

相關文章

跨平臺編程:在Conda中搭建R語言環境的終極指南

🌐 跨平臺編程:在Conda中搭建R語言環境的終極指南 🌐 在數據科學和統計分析領域,R語言以其強大的數據處理能力和豐富的圖形表示功能而廣受歡迎。然而,對于習慣了使用Linux操作系統的用戶來說,如何方便地在…

【UML用戶指南】-23-對高級行為建模-狀態機

目錄 1、概述 2、狀態 2.1、狀態的組成 3、轉移 3.1、轉移的組成 4、高級狀態和轉移 4.1、進入效應和退出效應 4.2、內部轉移 4.3、do活動 4.4、延遲事件 4.5、子狀態機 5、子狀態 5.1、非正交子狀態 5.2、歷史狀態 5.3、正交子狀態 6、分叉與匯合 7、主動對象…

GOROOT GOPATH GOPROXY GO111MODULE

GOROOT GOROOT代表Go的安裝目錄。可執行程序go(或go.exe)和gofmt(或gofmt.exe)位于 GOROOT/bin目錄中。 配置GOROOT環境變量,其值為Go的安裝目錄;然后在環境變量PATH中添加GOROOT/bin路徑。 注意:GOROOT變量只是代表了安裝目錄,不…

泛型的實際應用示例

泛型的實際應用示例 1. 集合框架中的泛型 在Java的集合框架中,泛型被廣泛使用以確保類型安全并減少運行時錯誤。以下是一個使用泛型ArrayList的示例: java import java.util.ArrayList; import java.util.List; public class GenericCollectionsExamp…

【面試題】信息系統安全運維要做什么

信息系統安全運維是確保信息系統穩定、可靠、安全運行的一系列活動和措施。 其主要包括以下幾個方面: 1.系統監控: 實時監測信息系統的運行狀態,如服務器的性能指標、網絡流量、應用程序的運行情況等。通過監控工具,及時發現系統…

企業數據治理的下一步是數據資產管理?

隨著信息技術的飛速發展和數字化轉型的深入推進,企業數據已成為驅動業務增長和創新的核心要素。當企業數據治理工作取得顯著成效后,如何進一步發揮數據的價值,實現數據資產的有效管理,成為企業面臨的重要課題。 數據治理的基石作用…

算法練習——函數、遞歸和遞推

在此記錄一些有關函數、遞歸和遞推的問題。所有題目均來自洛谷的題單能力提升綜合題單Part1 入門階段 - 題單 - 洛谷 | 計算機科學教育新生態 (luogu.com.cn) (實際上都沒有用遞推做) [NOIP2001 普及組] 數的計算 題目描述 給出正整數 n n n&#xf…

學習感悟丨在譽天學習數通HCIP怎么樣

大家好,我是譽天學員的徐同學,學習的數通HCIP課程。 在學校的時候,聽說下半年就要出去實習了,心中坎坷不安,現在我學到的知識遠遠不夠的。然后就想著學點東西充實一下自己的知識面和專業能力,有一次和同學談…

【漏洞復現】飛企互聯——SQL注入

聲明:本文檔或演示材料僅供教育和教學目的使用,任何個人或組織使用本文檔中的信息進行非法活動,均與本文檔的作者或發布者無關。 文章目錄 漏洞描述漏洞復現測試工具 漏洞描述 飛企互聯-FE企業運營管理平臺是一個基于云計算、智能化、大數據…

[圖解] 向量數據庫之何謂乘積量化器?

Product Quantization 在前面一節講解了向量數據庫索引相關的內容,那么本節將會講解其中壓縮方法的量化手段:乘積量化器。 簡單來說將向量的所有維度劃分為多個子空間,每個子空間一部分維度,然后每個子空間獨立去找最近距離。例如…

haproxy實現代理和負載均衡

HaProxy介紹: haproxy是法國開發者威利塔羅在2000年使用C語言開發的一個開源軟件,是一款具備高并發(一萬以上)、高性能的TCP和HTTP負載均衡器,支持基于cookie的持久性,自動故障切換,支持正則表達式及web狀態統計&…

Numpy array和Pytorch tensor的區別

1.Numpy array和Pytorch tensor的區別 筆記來源: 1.Comparison between Pytorch Tensor and Numpy Array 2.numpy.array 4.Tensors for Neural Networks, Clearly Explained!!! 5.What is a Tensor in Machine Learning? 1.1 Numpy Array Numpy array can only h…

arthas監控工具筆記(一)

文章目錄 啟動 math-game啟動 arthas查看 dashboard通過 thread 命令來獲取到math-game進程的 Main Class通過 jad 來反編譯 Main Class退出 arthas 界面linux服務器掛不上進程怎么辦? 核心表達式變量loader 本次調用類所在的 ClassLoaderclazz 本次調用類的 Class 引用method…

信息學奧賽初賽天天練-39-CSP-J2021基礎題-哈夫曼樹、哈夫曼編碼、貪心算法、滿二叉樹、完全二叉樹、前中后綴表達式轉換

PDF文檔公眾號回復關鍵字:20240629 2022 CSP-J 選擇題 單項選擇題(共15題,每題2分,共計30分:每題有且僅有一個正確選項) 5.對于入棧順序為a,b,c,d,e的序列,下列( )不合法的出棧序列 A. a,b&a…

螺旋矩陣問題C代碼

給定一個n行m列的二維數組,要求按順時針螺旋順序輸出矩陣中的所有元素,n和m小于等于10 如下圖是一個三行四列的螺旋矩陣 要求輸出 1 2 3 4 8 12 11 10 9 5 6 7 全局變量定義 int a[11][11]; int vis[11][11]; // 訪問標記數組關鍵代碼如下 int dx[] …

MySQL高級-MVCC-基本概念(當前讀、快照讀)

文章目錄 1、MVCC基本概念1.1、當前讀1.1.1、創建表 stu1.1.2、測試 1.2、快照讀 1、MVCC基本概念 全稱Multi-Version Concurrency Control,多版本并發控制。指維護一個數據的多個版本,使得讀寫操作沒有沖突,快照讀為MySQL實現MVCC提供了一個…

OpenCV cv::Mat到 Eigen 的正確轉換——cv2eigen

在進行計算機視覺項目時,我們經常需要處理相機位姿的變換。最近,我在項目中遇到了一個看似簡單但實際上頗具挑戰性的問題:從 OpenCV 的 cv::Mat 格式轉換到 Eigen 庫的格式。這個過程中遇到了一些問題,但最終找到了一個穩健的解決…

鏤空的文字?分享 1 段優質 CSS 代碼片段!

大家好,我是大澈! 本文約 800 字,整篇閱讀約需 1 分鐘。 每日分享一段優質代碼片段。 今天分享一段優質 CSS 代碼片段,實現 CSS 文字鏤空的效果。 老規矩,先閱讀代碼片段并思考,再看代碼解析再思考&#…

nginx本地域名配置

修改hosts文件(僅限本地測試): 在Windows上,hosts文件位于C:\Windows\System32\drivers\etc\hosts。 打開hosts文件,添加一行:127.0.0.1 xxx.com (xxx.com為自己設定的域名) 如果修…

Leetcode3190. 使所有元素都可以被 3 整除的最少操作數

Every day a Leetcode 題目來源:3190. 使所有元素都可以被 3 整除的最少操作數 解法1:遍歷 遍歷數組,累加最少操作數,即 min(num % 3, 3 - num % 3)。 代碼: /** lc appleetcode.cn id3190 langcpp** [3190] 使所…