JAVA-web-API
本文最后更新于 2025年11月1日 晚上
JAVA
Web-API
DriverManager(注册管理类)
registerdriver方法:注册驱动(以Class.forname使用)
connection方法:获取连接(语法:jdbc:mysql://ip:端口/数据库名?参数键值对)
Connection(数据库连接对象)
Statement createStatement():普通sql执行对象
PrepareStatement prepareStatement():预编译执行sql对象
CallableStatement prepareCall():执行存储过程的对象
setAutoCommit(aaa):开启事务,参数为true or false 决定是否主动提交
commit():提交事务
rollback():回滚事务
Statement(sql语句执行对象)
int executeUpdate(sql):DML(数据操纵,即数据的增删改)、DDL(数据库结构的更改)
ResultSet ExecuteQuery(sql):执行DQL(数据查询)
ResultSet(结果集对象)
next():光标向下移动,并判断有效行
getxxx(参数):xxx是数据类型,参数可以是int,string,int是列的编号,string是列的名称
Java基础
面向对象
封装
定义:为了避免对对象中的参数被破坏,在实体类中通常对参数进行封装,不会向外暴露,对于参数的操作只会在本类中进行,向外只暴露方法
static:表示静态,用了这个修饰符后表示这个变量或者方法属于这个类,可以用这个类直接调用,也可以用对象调用,但是不推荐,静态方法不能使用this关键字,不能直接访问实例成员
继承
权限修饰符
protect:本类,同一个包的中的类及其子孙类能调用
private:只能本类调用
public:任意位置
特点
不支持多继承,但支持多层继承
所有类都继承于一个object祖宗类
继承类成员的访问遵循就近原则,先从子类找,找不到在去父类找,一定要调用父类的需使用super
方法重写
1.需加注解@override
2.是在子类中觉得父类中的方法不符合要求,对父类的方法进行重写,例如,print其实是tostring方法,会打印地址,可以重写tostring方法来打印内容
子类构造器/兄弟构造器
在调用子类构造器的时候,子类会先调用父类构造器来完成初始化
为了调用不同参数的构造器时,用this()调用兄弟构造器用于减少代码量
多态
对象多态
一个对象有多种形式,比如人有多种不同的身份,像这样,一个父类作为总对象,其不同身份的子类称为对象的多态,有继承才有多态
行为多态
继承同一个父类的子类可以存在不同的方法,当父类的这个方法满足不了需求,根据不同子类的身份重写父类的方法,称为行为多态
特点/好处
对于多态的成员变量,编译时看父类,运行时也看父类,而对于成员方法,编译时看父类,运行时看的子类
多态是解耦合的,父类对象可以包含子类对象,便于扩展和维护
父类类型变量的参数可以接收所有的子类对象
多态下不能使用子类的独有功能
可以把子类变量强制转换为父类变量
面向对象高级
final 关键字
特点
可以修饰类、方法、变量,修饰后都为最终类、方法,无法被继承和重写,修饰变量后该变量只能被赋值一次
使用static final 修饰的成员变量称为常量,通常是系统配置信息
单例类
作用
确保某个类只能创建一个对象
步骤
构造器私有、在类里面创建一个私有对象,定义一个类方法返回该对象
分为饿汉式和懒汉式,第一个直接创建对象,第二个在调用时在创建对象
枚举类
写法

特点
枚举类第一行只能写枚举类的对象名称,多个时要用逗号隔开,这些名称本质上是常量
枚举类都是最终类,不能被继承
枚举类的构造器是私有的,写不写都只能是私有的,因此枚举类不能创建对象
应用场景
作为信息分类和标志,比如一个游戏中的上下左右移动,就很适合用枚举类做
抽象类
定义:用abstract 修饰的类,抽象类不需要实类体,他是抽象的,为了更好的适应多态
特点
抽象类中不一定有抽象方法,但有抽象方法的类一定是抽象类
类的成员与正常类,最主要的特点是,抽象类无法创建对象,仅作为一种特殊的父类,给子类继承并实现
一个类继承抽象类,必须重写所有父类中的抽象方法或者自身称为抽象类
模板方法设计模式
提供一个方法作为完成某类功能的模板,模板方法封装了每一个实现步骤,但是允许子类提供特定步骤的实现
接口
概述:提供interface定义接口,接口类只能定义常量和抽象方法(jdk8 之前),后面又提够了三种方法,接口无法创建对象,只能被类继承实现,与类不同的是,接口可以被多继承,正常类不行
好处/注意
弥补类单继承的不足,可以多继承,功能更加强大,可以让程序面向接口变成,利于程序的解耦合,需要注意的是,在实现类继承父类的情况下,还实现了接口,并且方法重名,实现类会优先寻找父类的方法,想要调用接口的方法如下:接口名.super.方法名,继承多个接口发现方法重名时,是不支持多继承,也不支持多实现的
JDK8开始新增的三种方法
default默认方法,会加上public,只能继承接口的实现类使用
private私有方法,,只能借助接口中的其他方法调用,比如default
static 静态方法,属于接口类的静态方法,只能使用接口名来调用
抽象类与接口的区别
相同点:
多是抽象形式,都可以有抽象方法,都不能创建对象
都是派生子类形式,抽象类是被子类继承使用的,接口时被实现类实现
一个类继承抽象类,或者实现接口,都必须重写抽象方法,否则自身要成为抽象类
都支持多态,支持解耦合
不同点
- 抽象类可以定义类的全部成员,接口只能定义常量,抽象方法,
- 抽象类只能被单类继承,接口可以被类多实现,
- 一个类继承抽象类就不能继承其他类,一个类实现了接口,还可以实现其他接口
- 抽象类体现模板思维,更利于做父类,实现代码复用性的最佳实践
- 接口更适合做功能的解耦合,解耦合更强,更灵活