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