排序
Java中抽象类和接口之间的区别
抽象类(Abstract Class) 抽象类可以包含抽象方法(方法没有实现),也可以包含具体方法(方法有实现)。 抽象类可以有成员变量,可以有构造方法,可以拥有普通方法。 一个类只能继承一个抽象...
Java面试题之Logback打印日志是如何获取当前方法名称的?
在 Java 中,有四种方法可以获取当前正在执行方法体的方法名称,分别是: 使用 Thread.currentThread().getStackTrace() 方法 使用异常对象的 getStackTrace() 方法 使用匿...
线程池的7大核心参数有哪些
七大参数 corePoolSize 核心线程数目 - 池中会保留的最多线程数 maximumPoolSize 最大线程数目 - 核心线程+救急线程的最大数目 keepAliveTime 生存时间 - 救急线程的生存时间,生存时间内没有新...
wait和sleep的区别
共同点 wait() ,wait(long) 和 sleep(long) 的效果都是让当前线程暂时放弃 CPU 的使用权,进入阻塞状态 不同点 方法归属不同 sleep(long) 是 Thread 的静态方法 而 wait(),wait(long) 都是 Ob...
JVM内存结构
结合一段 java 代码的执行理解内存划分 执行 javac 命令编译源代码为字节码 执行 java 命令 创建 JVM,调用类加载子系统加载 class,将类的信息存入方法区 创建 main 线程,使用的内存区域是&nb...
JVM内存参数
堆内存,按大小设置 解释: -Xms 最小堆内存(包括新生代和老年代) -Xmx 最大对内存(包括新生代和老年代) 通常建议将 -Xms 与 -Xmx 设置为大小相等,即不需要保留内存,不需要从小到大增长,...
Spring Boot starter总结
1. starter介绍 Spring Boot 在配置上相比spring要简单许多, 其核心在于spring-boot-starter, 在使用spring boot来搭建一个项目时, 只需要引入官方提供的starter, 就可以直接使用, 免去了各种配...













