面试鸭Java后端面试题, 上海某数字科技公司 Java 面经
面试鸭Java后端面试题, 上海某数字科技公司 Java 面经
QA
Step 1
Q:: 什么是Java中的垃圾回收机制?
A:: Java中的垃圾回收机制是自动管理内存的过程。Java虚拟机(JVM)会自动检测不再使用的对象并回收其占用的内存,以防止内存泄漏。主要垃圾回收算法包括标记-清除、复制和标记-
压缩等。
Step 2
Q:: Java中的线程池是什么?如何使用?
A:: 线程池是一种管理线程的机制,可以避免频繁创建和销毁线程的开销。Java通过Executor框架提供了线程池的实现,如FixedThreadPool、CachedThreadPool等。使用时,可以通过Executors工厂方法创建线程池,然后提交任务给线程池执行。
Step 3
Q:: 什么是Java中的类加载机制?
A:: Java的类加载机制指的是Java类在运行时被动态加载到JVM中的过程。类加载器分为三种:启动类加载器(Bootstrap ClassLoader)、扩展类加载器(Extension ClassLoader)和应用程序类加载器(Application ClassLoader)。类加载的过程包括加载、验证、准备、解析和初始化五个阶段。
Step 4
Q:: Java中的同步机制是什么?
A:: Java中的同步机制是指多线程编程中用来控制多个线程对共享资源的访问。主要包括synchronized关键字、Lock接口及其实现类(如ReentrantLock)。synchronized用于方法和代码块,而Lock提供了更灵活的锁控制。
Step 5
Q:: 什么是Spring框架中的依赖注入(DI)?
A:: 依赖注入是一种设计模式,Spring框架通过DI实现对象的创建和管理。DI使得对象的依赖关系在配置文件或注解中声明,从而实现松耦合。常见的依赖注入方式包括构造函数注入和setter方法注入。
Step 6
Q:: Spring Boot的主要优点是什么?
A:: Spring Boot简化了Spring应用的开发,通过约定优于配置的理念,减少了繁琐的配置。主要优点包括快速创建和部署独立运行的Spring应用、内嵌服务器(如Tomcat)、自动配置和强大的开发工具支持。