常见排序算法(Java)2024-09-242024-10-11javaJavapublic class Main { public static void main(String[] args) { int[] array = {5, 4, 3, 2, 1}; bubbleSort(array); insertionSo2024-09-24|6|0
Java中的线程安全2024-07-162024-10-11javaJava什么是线程安全? 简单来说,线程安全是多个线程访问同一段代码,不会造成不确定的结果。 线程安全就是多线程访问时,采用了加锁机制,同一时刻有且只有一个线程在操作共享数据,其他线程必须等到该线程处理完数据后再对共享数据进行操作,确保不会出现数据不一致或者数据污染。 线程不安全就是不提供数据访问保护,有可2024-07-16|5|0
Java字符串相关类的底层原理2024-07-152024-10-11javaJava字符串存储的内存原理 直接赋值会复用字符串常量池中的(相同字符串的地址相同) java String s3 = "s3"; String s4 = "s3"; System.out.println(s1 == s2); // true new出来不会复用,而是开辟一个新的空间(相同字符串的地址不同)2024-07-15|6|0
Java中一个对象的内存图2024-07-152024-10-11javaJavaUser user = new User("张三", 18); 加载User的class文件(方法区) 声明局部变量user(栈) 在堆内存开辟空间 默认初始化 显示初始化 java public class User { private String name = "李四"; private i2024-07-15|4|0
Java中方法的基本内存原理2024-07-152024-10-11javaJavathis的本质:代表方法调用者的地址值。 基本概念 堆:new出来的都在堆内存中开辟一个小空间。 栈(先进后出/后进先出):方法运行时使用的内存,运行方法入栈,运行完毕出栈。 基本数据类型:整数、浮点数、布尔、字符。 引用数据类型:除了基本数据类型之外的其他类型。 值传递 传递基本数据类型时,传递的2024-07-15|7|0
java发送邮件2024-01-282024-10-11javaJavamaven坐标 <!--spring-boot-starter-mail--> <dependency> <groupId>org.springframework.boot</groupId> <artifactId>spring-boot-starter-mail</artifac2024-01-28|6|0