JAVA
文章平均质量分 56
分享JavaSE、JavaEE、后端开发框架(SSM、SpringBoot)……学习心得。
GUMP小甘
这个作者很懒,什么都没留下…
展开
-
Java日期格式化注解【@DateTimeFormat和@JsonFormat】✔
如果你需要处理的日期字符串不包含时区信息,那么它将被解析为系统默认的时区。如果你的系统默认时区不是 GMT+8,你可能需要在代码中手动处理时区问题。当你的 Spring 应用程序接收到一个 HTTP 请求,并且请求参数包含日期和时间数据时,对象会被序列化为 “yyyy-MM-dd HH:mm:ss” 格式的字符串,并且使用 GMT+8 的时区。这两个注解通常一起使用,以确保在前后端之间传递日期和时间数据时,数据的格式始终保持一致。参数,如果你需要解析的日期字符串包含时区信息,那么你需要在。原创 2024-05-23 10:19:04 · 527 阅读 · 0 评论 -
Java日期格式化(@JsonFormat @JSONField)
和@JSONField都是在 Java 对象序列化为 JSON 格式时,用于指定日期格式的注解,但它们通常与不同的 JSON 库相关联。原创 2023-11-22 10:00:53 · 2070 阅读 · 0 评论 -
Java知识体系
Java原创 2023-11-22 09:55:43 · 125 阅读 · 0 评论 -
Cookie和Session的理解
总的来说,Cookie存储在客户端,而Session存储在服务器端。Cookie可以存储更多类型的数据,但由于存储在客户端,存在安全风险。Session相对安全,但在大规模应用中可能会增加服务器负担。选择使用Cookie还是Session通常取决于具体的需求和安全考虑。Cookie和Session都是用于在Web应用中跟踪用户状态的机制,但它们有一些关键的区别。考虑一个用户登录的情境,用Cookie和Session来存储用户信息。原创 2023-11-22 09:27:11 · 34 阅读 · 0 评论 -
lock和synchronized的区别以及优缺点
lock和都是在多线程编程中用于同步的机制,但它们有一些区别。原创 2023-11-20 20:43:53 · 106 阅读 · 0 评论 -
线程的三种创建方式
【代码】线程的三种创建方式。原创 2023-11-19 20:06:59 · 201 阅读 · 0 评论 -
Java枚举
enum Day {在这个例子中,Day是一个枚举类型,包含了一周中的每一天作为枚举常量。原创 2023-11-19 14:18:19 · 76 阅读 · 0 评论 -
Java强制类型转换
在Java中,强制类型转换(也称为类型转换或类型转换)是指将一个数据类型的值转换为另一个数据类型。强制类型转换可能会导致精度损失或溢出,因此在进行强制类型转换时需要注意数据范围和精度。原创 2023-11-19 14:13:31 · 100 阅读 · 0 评论 -
Java初始化顺序
父类(静态变量、静态语句块)子类(静态变量、静态语句块)父类(实例变量、普通语句块)父类(构造函数)子类(实例变量、普通语句块)子类(构造函数)原创 2023-11-19 13:53:37 · 75 阅读 · 0 评论 -
Object常用方法——clone()
在实际开发中,也可以考虑使用其他方式实现对象的复制,如序列化、构造方法复制等,具体选择取决于需求。方法是Object类中定义的一个方法,用于创建并返回一个对象的拷贝。但是,需要注意的是,方法是浅拷贝,即它只会复制对象的字段值,而不会复制对象引用的其他对象。以下是一个简单的示例,演示了如何使用。类型,因此需要进行类型转换。方法中,我们创建了一个。原创 2023-11-19 13:38:15 · 174 阅读 · 0 评论 -
Object常用方法——toString()
这个方法返回一个包含对象信息的字符串,可以用于调试、日志记录,或者是将对象的内容以字符串的形式展示给用户。方法是Java中的一个方法,它是Object类的一个公共方法,因此几乎所有的Java类都可以调用这个方法。方法有助于提供更有意义和易读的输出,方便调试和理解对象的状态。这在实际的开发和调试过程中是一个常见的做法。方法返回一个由类名和对象的散列码组成的字符串。在Java中,当我们需要将一个对象转换成字符串时,通常会调用其。方法,以便提供更有意义的字符串表示形式。的主要作用是返回对象的字符串表示形式。原创 2023-11-19 13:33:04 · 577 阅读 · 0 评论 -
this和super关键字的意义和作用
在Java中,this和super是两个关键字,用于引用对象和父类,分别表示当前对象和父类对象。this。原创 2023-11-19 11:37:20 · 196 阅读 · 0 评论 -
Java中对象引用是什么意思
在Java中,对象的引用指的是一个变量,该变量存储了对象在内存中的地址。变量本身并不直接存储对象的实际内容,而是存储了对象的引用,通过引用可以访问和操作对象的属性和方法。变量可以存储基本数据类型的值,也可以存储对象的引用,即对象在内存中的地址。引用的概念使得在Java中可以方便地操作和传递对象,同时也引入了一些概念,如对象的生命周期、引用的传递、垃圾回收等。特别需要注意的是,对于基本数据类型(如整数、浮点数等),变量存储的是实际的数值,而对于对象类型,变量存储的是对象在堆内存中的地址。原创 2023-11-19 11:36:42 · 244 阅读 · 0 评论 -
抽象类和接口的使用场景
抽象类(Abstract Class)和接口(Interface)是Java中两种实现抽象类型的方式,它们各自有不同的使用场景和适用情况。原创 2023-11-19 11:27:59 · 176 阅读 · 0 评论 -
线程和进程的区别
总的来说,线程和进程各有优势和劣势,选择使用哪种取决于具体的应用场景和需求。原创 2023-11-19 10:27:36 · 80 阅读 · 0 评论 -
工厂模式介绍
抽象工厂模式提供了一组相关或相互依赖的对象的创建接口,而不指定它们的具体类。客户端通过调用工厂接口或抽象类的方法来创建一组相关的产品。// 抽象工厂接口// 具体工厂1// 具体工厂2// 产品A接口// 具体产品A1// 具体产品A2// 产品B接口// 具体产品B1// 具体产品B2// 客户端代码工厂模式提供了一种创建对象的灵活方式,使得客户端代码不需要直接依赖具体类,而是依赖于抽象接口或类。原创 2023-11-16 18:53:01 · 52 阅读 · 0 评论 -
对象比较【边界】
对于较小的整数(通常在-128到127之间,包括边界),JVM使用缓存对象以提高性能。这意味着在此范围内的。在你的例子中,值都是128,这超出了通常发生整数缓存的范围。这段代码的打印结果是false。然而,对于超出此范围的值,将创建新的。对象将引用内存中的相同对象,因此。,因为将为每个变量创建不同的。当你在Java中使用。,因为对象是不同的。对象的值,你应该使用。原创 2023-11-16 18:31:32 · 46 阅读 · 0 评论 -
ArrayList的默认长度
ArrayList的容量不足以容纳新添加的元素时,它会创建一个新的更大的数组,并将旧数组中的元素复制到新数组中。适应不同大小的数据集,但是在特定情况下可能会引起性能开销。因此,如果你能预测到。默认情况下,每次扩容会将当前容量增加一半。可能会存储大量元素,可以通过指定初始容量来避免多次扩容,从而提高性能。在创建时就会分配一个具有更大初始容量的数组,从而减少后续的扩容操作。对象时,它会在内部分配一个初始容量为10的数组来存储元素。的默认初始容量是10。中添加的元素数量超过了初始容量,这种自动扩容的机制帮助了。原创 2023-11-16 18:27:39 · 1087 阅读 · 0 评论 -
Java并发编程基础和核心概念
Java 并发编程是指在多个线程之间有效地协调和控制任务执行的一种编程方式。在并发编程中,多个线程同时执行,共享资源,需要考虑线程安全、同步、互斥等问题。原创 2023-11-14 10:53:26 · 32 阅读 · 0 评论 -
JDK核心API
Java Development Kit (JDK) 提供了丰富的核心 API,用于开发各种类型的 Java 应用程序。原创 2023-11-14 10:51:31 · 84 阅读 · 0 评论 -
Java输入输出流IO
Java I/O(输入/输出)是处理输入和输出的机制,用于读取和写入数据。Java 提供了丰富的 I/O 类库,支持文件操作、网络通信、对象序列化等。原创 2023-11-14 10:50:01 · 42 阅读 · 0 评论 -
Java多线程基本概念以及实现方式
在 Java 中,多线程是一种并发执行的机制,允许程序同时执行多个任务。多线程的基本概念包括线程、并发和同步。原创 2023-11-14 10:38:54 · 30 阅读 · 0 评论 -
Java内部类
Java 中的内部类是在一个类的内部定义的类。内部类的存在使得一个类可以拥有另一个类,并且可以访问包含它的类的成员。内部类有四种类型:成员内部类、局部内部类、匿名内部类和静态内部类。原创 2023-11-14 10:37:20 · 22 阅读 · 0 评论 -
String、StringBuffer、StringBuilder的区别以及实例
`String`、`StringBuffer` 和 `StringBuilder` 是 Java 中用于处理字符串的三个主要类,它们有一些重要的区别原创 2023-11-14 10:36:13 · 36 阅读 · 0 评论 -
equals、hashcode和==之间的区别和实例
在 Java 中,equals()hashCode()和==是用于比较对象的三个关键方法,它们在实现和使用上有一些重要的区别。原创 2023-11-14 10:34:37 · 49 阅读 · 0 评论 -
类、对象和实例三者之间的关系
"对象"或"实例"则是具体的个体,是根据类创建的具体实体。通过创建类的对象或实例,我们可以在程序中操作和使用类定义的属性和方法。类是一种抽象的模板或蓝图,用于定义对象的属性和行为。对象是类的具体实例,它是根据类定义创建的一个具体个体。对象是类的实体,具有类定义的属性和行为。一个类可以有多个对象,每个对象都是独立的,拥有自己的状态和行为。实例是对象的另一个术语,它通常用来强调一个具体的对象是根据类定义创建的。在面向对象编程中,“类”、"对象"和"实例"是三个重要而相关的概念。类的一个实例,也是一个对象。原创 2023-11-14 10:33:06 · 684 阅读 · 0 评论 -
static和final关键字
static和final是 Java 中两个关键字,它们用于修饰类的成员变量、方法或者类本身。static。原创 2023-11-14 10:31:58 · 20 阅读 · 0 评论 -
Java异常处理机制
Java 异常处理机制是通过使用 try、catch 和 finally 块来实现的。异常是在程序运行时可能发生的错误,它可以分为两种类型:已检查异常(checked exception)和未检查异常(unchecked exception)。已检查异常需要在代码中进行明确的处理,而未检查异常通常是由程序错误导致的,可以选择性地进行处理。这些元素共同构成了 Java 异常处理机制,使得开发者可以更好地处理和管理程序运行时可能出现的异常情况。块中的代码执行之后执行,无论是否发生异常。语句块来捕获和处理异常。原创 2023-11-14 10:29:37 · 29 阅读 · 0 评论 -
Java反射机制
Java的反射机制是指在运行时(runtime)检查和操作类、方法、字段等的能力。通过反射,可以在程序运行时动态获取类的信息、创建对象、调用方法、访问字段等。反射主要涉及到包中的一些类,其中最核心的类包括ClassMethod和Field。原创 2023-11-14 10:28:15 · 26 阅读 · 0 评论 -
Java动态代理实例(JDK/CGLIB)
动态代理是 Java 中一种强大的技术,它允许在运行时创建代理类和对象。在 Java 中,主要有两种动态代理的实现方式:JDK 动态代理和 CGLIB 动态代理。下面分别介绍这两种方式的实例。原创 2023-11-14 10:26:27 · 67 阅读 · 0 评论 -
Java数据结构:数组、向量、集合
Arrays(数组)、Vectors(向量)、和Collections(集合)是 Java 中不同的数据结构,它们各自有优缺点,并适用于不同的使用场景。List 适用于按照插入顺序存储元素的场景。Set 适用于需要元素唯一性的场景。Queue 适用于先进先出的队列场景。Map 适用于键值对映射关系的场景。在选择集合接口时,要根据实际需求考虑元素的唯一性、有序性以及对性能的要求。有时,结合使用多个集合接口的实现类能更好地满足特定的需求。原创 2023-11-12 15:58:56 · 210 阅读 · 0 评论 -
集合——Queue接口:关于LinkedList和PriorityQueue的区别
LinkedList是一个基于链表的数据结构,插入和删除效率高,但访问元素的效率较低。适用于频繁插入和删除的场景。是一个基于堆的数据结构,元素按照一定规则排序。插入和删除的效率相对较高,但访问元素的效率较低。适用于需要元素有序存储的场景。在选择使用哪种队列时,需要根据具体的使用场景和需求来决定。原创 2023-11-12 15:49:16 · 80 阅读 · 0 评论 -
集合——Set接口:关于HashSet、LinkedHashSet和 TreeSet的区别
如果不关心元素的存储顺序,而更关注性能,可以选择使用HashSet。如果需要保持元素插入的顺序,可以选择使用。如果需要有序集合,可以选择使用TreeSet。但要注意,它的性能可能不如HashSet,特别是在大型数据集上。在选择使用哪种集合类时,考虑到具体的需求和性能要求是很重要的。原创 2023-11-12 15:01:22 · 99 阅读 · 0 评论 -
集合——List接口:关于ArrayList、LinkedList和Vector的区别
ArrayList、LinkedList和Vector都是 Java 集合框架中的列表实现,用于存储和操作元素。原创 2023-11-12 14:57:51 · 248 阅读 · 0 评论 -
JavaSE 基础知识
本文将对Java的三大特性:封装、继承、多态进行简单的说明,涉及abstract、final、static、implements、extends……等关键字,主要对父类和子类的继承、方法的重载和重写进行详细的叙述。原创 2022-09-29 17:27:40 · 799 阅读 · 0 评论