面向对象,常用类,集合,异常,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.mzph.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] 使所…