自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(15)
  • 收藏
  • 关注

原创 【JavaSE】接口与抽象类

一、抽象类被abstract修饰的类,称为抽象类。被abstract修饰的方法,称为抽象方法。类具有的成分,抽象类都具有。可以包含成员变量、方法(普通方法和抽象方法都可以)、构造器、初始化块、内部类。抽象类和抽象方法都必须使用abstract修饰,抽象方法不能有方法体。抽象方法虽然具有构造器,但是不能用来创建对象,构造器提供给子类创建对象时调用父类构造器使用。含有抽象方法的类(包括直接定义了一个抽象方法;或继承了一个抽象父类,但没有完全实现父类包含的所有抽象方法;或实现了一个接口,但没有完全实现

2023-11-14 11:47:35 391 1

原创 【数据结构与算法】排序

一、Comparable接口所有可以排序对象所对应的类,都实现了 Comparable 接口(Comparable 中的泛型为要比较的对象类型,即该类的类型),并重写了compareTo()方法。public int compareTo(Object obj)返回值 = 0:this == o返回值 >0:this > obj返回值 < 0:this < obj平均时间复杂度为O(n2),适用于元素个数较少的排序。(1)定义 Student 类public cla

2023-03-24 22:58:50 99

原创 【计算机网络】HTTP 协议

一、概述Hyper Text Transfer Protocol,超文本传输协议,是一个简单的请求-响应协议,用于客户端和服务器之间的通信。

2022-05-04 19:43:22 305 1

原创 【计算机网络】TCP / IP 协议

一、概述Transmission Control Protocol,传输控制协议,是一种面向连接的、可靠的、基于字节流的传输层通信协议。Internet Protocol,网际互连协议,是 TCP /IP 体系中的网络层协议。TCP / IP 传输协议,即传输控制/网络协议,也叫作网络通讯协议,它是在网络的使用中的最基本的通信协议。TCP / IP 是指能够在多个不同网络间实现信息传输的协议簇。TCP / IP 协议不仅仅指的是TCP 和 IP 两个协议,而是指一个由 FTP、SMTP、TCP、U

2022-05-04 19:40:38 1346

原创 【SpringBoot】拦截器认证鉴权

User@Data@AllArgsConstructor@NoArgsConstructorpublic class User { private Integer id; private String username;// @JsonIgnore private String password; private int age;}UserMapper@Mapperpublic interface UserMapper extends BaseMa

2022-03-30 00:01:11 1027

原创 【JKD源码】String 三兄弟

一、String二、StringBuilder2.1、父类abstract class AbstractStringBuilder implements Appendable, CharSequence { char[] value; int count; // 实际字符的个数 AbstractStringBuilder() {} AbstractStringBuilder(int capacity) { value = new char[

2022-03-17 18:32:25 930

原创 【JDK源码】Integer

一、继承关系Byte、Short、Integer、Long、Float、Double 都直接继承抽象父类 Number,该类提供了将 Number 类型的数据,转换成相对应的基本数据类型的方法。public abstract class Number implements java.io.Serializable { public abstract int intValue(); public abstract long longValue(); public a

2022-03-17 18:31:10 320

原创 【JavaSE】Lambda表达式

一、基本用法Lambda 表达式的核心目的是为了简化函数式接口的匿名内部类。Lambda 表达式由三部分组成:形参列表。允许省略形参类型。若只有一个形参,圆括号也可省略。箭头(->)。代码块。如果代码块只有一条语句,允许省略花括号。(1)定义一个函数式接口。@FunctionalInterfacepublic interface Eatable { void eat(String name);}(2)匿名内部类的写法Eatable eatable = new Eat

2022-03-12 14:50:03 150

原创 【JavaSE】异常

一、概述Java中异常继承的根类是 Throwable,Throwable 是根类,但不是异常类。Error 是严重的错误。Exception 才是异常类,它是是编译或执行过程中可能会出现的问题,应该尽量提前避免。异常的分类:编译时异常:继承自 Exception 的异常或其子类,编译阶段就会报错。运行时异常:继承自 RuntimeException 的异常或其子类,编译阶段不会报错,它是在运行是阶段才可能出现,建议提前处理。异常一旦出现,程序就会终止。所以需要避免异常,处理异常。

2022-03-10 19:25:27 116

原创 【JavaSE】面向对象

一、类的概述类(class)是某一批对象的抽象,可以把类理解成某种概念。对象(instance)是一个具体存在的实体。面向对象的三大特征:封装、继承、多态。类的成员包括:成员变量:用于定义该类或该类的实例所包含的状态数据。构造器:用于构造该类的实例。初始化块:方法:用于定义该类或该类对象的实例的行为特征或者功能特征。内部类:1.1 成员变量修饰符:可以省略,也可以是public、protected、private、static、final、。其中public、protected、

2022-02-06 15:41:28 495

原创 【JavaSE】内部类

一、概述定义在其他类内部的类,被称为内部类(或嵌套类);包含内部类的类被称为外部类(或宿主类)。内部类会延迟加载,只有当第一次使用的时候才会被加载,不使用就不胡被加载。内部类提供了更好的封装性,可以把内部类隐藏在外部类之内,不允许同一个包下的其他类访问。内部类可以直接访问外部类的私有数据,因为内部类被当作其外部类的成员,同一个类的成员之间可以互相访问。但外部类不能访问内部类的实现细节。内部类比外部类多了三个修饰符:private、protected、static。外部类不可以使用这三个修饰符。

2022-02-06 15:38:07 381

原创 【JDK源码】ArrayList

一、ArrayList概述数组:一旦初始化长度就不可以发生变化。增删慢:每次增删元素,都需要改变数组的长度,且移动元素的位置。查询快:数组在内存中是一块连续的空间,可根据地址+索引的方式快速获取对应位置上的元素。ArrayList:List接口的大小可变数组的实现。ArrayList底层的数据结构就是数组,数组元素类型为Object类型。对ArrayList类的实例的所有的操作,在底层都是基于数组的。二、 ArrayList继承关系2.1 Serializable标记性接口2.1.1

2022-01-22 21:04:59 341

原创 【JavaSE】网络编程

一、TCP网络编程传输控制协议TCP,是一种面向连接的、可靠的、基于字符流传输层通信协议。在正式收发数据前,必须和对方建立可靠的连接。1.1 客户端创建Socket对象,并将它连接到指定IP的指定端口号。向服务端发送消息。释放资源。public class Client { public static void main(String[] args) { Socket socket = null; OutputStream outputStream =

2022-01-21 20:43:04 86

原创 【JavaSE】多线程

一、概述1.1 进程(Process)一个运行中的程序就是一个进程。进程有以下三个特点:独立性:进程是系统中独立存在的实体,每一个进程都拥有自己私有的地址空间。没有经过允许,不可以直接访问其他线程的地址空间。动态性:进程具有自己的生命周期和各种不同的状态。并发性:多个进程可以在单个处理器上并发执行,之间不会互相影响。并发性:指在同一时刻,有多条指令在多个处理器上同时执行。并行性:指同一时刻只能有一条指令执行,多个指令轮换执行。1.2 线程(Thread)线程也被称为轻量级进程,线程

2022-01-21 15:47:37 200

原创 【JavaSE】深入数组

一、数组的初始化1、静态初始化初始化时指定数组中每个元素的初始值,数组长度由系统决定。int[] arr = new int[] {1, 2, 3, 4}; // 正确2、动态初始化初始化时指定数组长度,每个数组元素有系统分配默认初始值。int[] arr = new int[4];// 报错,静态初始化和动态初始化不能同时使用,即不能既指定数组长度,又指定数组元素值。int[] arr = new int[4] {1, 2, 3, 4}; 数组类型默认值byte

2022-01-19 18:28:08 436

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除