-
- 说一下 jvm 的主要组成部分?及其作用?
- JVM核心组件包括类加载器、运行时数据区、执行引擎、JNI和垃圾回收器。1.类加载器加载.class文件,支持双亲委派模型,确保类的唯一性和安全性;2.运行时数据区分为方法区、堆、虚拟机栈、本地方法栈和程序计数器,分别管理类信息、对象实例、线程执行上下文等;3.执行引擎通过解释器和JIT编译器将字节码转为机器指令,提升执行效率;4.JNI允许Java调用本地方法,实现与底层系统交互;5.垃圾回收器自动回收堆中无用对象,释放内存,降低泄漏风险。各组件协同工作,支撑Java跨平台、高性能与自动内存管
- Java面试题 . Java 980 2025-11-24 13:47:02
-
-
- java 中Iterator 怎么使用?有什么特点?
- Iterator通过iterator()获取,使用hasNext()和next()遍历元素,可安全删除;其具备fail-fast机制、单向遍历、统一接口等特点,适用于List、Set等集合。
- Java面试题 . Java 240 2025-11-24 06:21:13
-
- 说一下 jvm 有哪些垃圾回收算法?
- 标记-清除算法通过标记存活对象后清除未标记对象,但会产生内存碎片;2.复制算法将内存分为两块,存活对象复制到另一块以避免碎片,适用于新生代但内存利用率低;3.标记-整理算法在标记后将存活对象compact到一端,减少碎片且提升利用率,适合老年代;4.分代收集基于对象生命周期划分区域,新生代用复制算法快速回收,老年代用标记-清除或标记-整理;5.现代回收器如G1、ZGC结合分区与并发机制优化性能,理解这些算法有助于JVM调优。
- Java面试题 . Java 900 2025-11-23 11:13:26
-
- kafka 可以脱离 zookeeper 单独使用吗?为什么?
- Kafka目前仍依赖ZooKeeper进行元数据管理、控制器选举和集群协调,因其在设计初期将ZooKeeper作为核心协调服务;尽管KIP-500引入KRaft模式,通过Raft共识协议将元数据管理内置于Kafka,逐步实现去ZooKeeper化,但该功能仍在演进中,生产环境建议暂用ZooKeeper以确保稳定。
- Java面试题 . Java 603 2025-11-23 10:08:02
-
- final、finally、finalize 有什么区别?
- final用于声明不可变性,finally用于异常处理后的资源清理,finalize则与垃圾回收相关但不推荐使用。
- Java面试题 . Java 312 2025-11-23 08:39:05
-
- 说一下 spring mvc 运行流程?
- SpringMVC通过DispatcherServlet接收请求,经HandlerMapping定位处理器,由HandlerAdapter调用Controller执行业务逻辑,再通过ViewResolver解析视图并渲染响应。2.SpringBoot简化了SpringMVC的配置,内置服务器并提供自动配置和starter依赖,提升开发效率,尤其适合微服务。3.可通过拦截器、自定义参数解析器、视图解析器、异常处理器和转换器等扩展点自定义请求处理流程。4.Controller方法可返回String视
- Java面试题 . Java 421 2025-11-22 14:41:56
-
- 解释一下什么是 aop?
- AOP通过将日志、事务、权限等横切关注点模块化,在不修改业务代码的前提下动态织入功能,解决了代码散布与纠缠问题,提升了可维护性和复用性。
- Java面试题 . Java 256 2025-11-22 13:14:02
-
- 简述观察下列代码,分析结果() ?
- 请补充具体的代码内容,以便我进行分析。目前未提供代码片段,无法继续解析其运行逻辑与输出结果。
- Java面试题 . Java 561 2025-11-22 08:57:06
-
- 请简述基于Spring Boot的分布式任务调度和处
- 分布式任务调度需解决任务唯一性、高可用、动态管理与监控问题,SpringBoot通过集成Quartz、XXL-JOB等框架实现节点协调;结合异步执行、异常重试、幂等控制与资源隔离提升可靠性,并借助Actuator、Prometheus、ELK等实现监控告警,保障任务稳定运行。
- Java面试题 . Java 589 2025-11-21 11:27:07
-
- Java中get()和 load()的区别?
- get()立即查询数据库,返回实体或null;2.load()返回代理对象,延迟加载,访问属性才查询,对象不存在则抛异常;根据是否存在判断选get(),性能优先且确定存在用load()。
- Java面试题 . Java 914 2025-11-21 10:42:06
-
- java 中抽象类必须要有抽象方法吗?
- 抽象类是使用abstract关键字修饰的类,不能被实例化,可包含抽象方法和具体方法。即使没有抽象方法,类也可声明为抽象类,如abstractclassAnimal含具体方法sleep。这样做的目的是防止类被直接实例化,确保其仅作为基类继承,常用于框架设计中表达模板意图。有无抽象方法不是抽象类的必要条件。
- Java面试题 . Java 531 2025-11-21 10:37:31
-
- 多线程锁的升级原理是什么?
- 锁升级是JVM根据竞争情况动态调整锁状态以优化性能的过程;2.偏向锁在无竞争时记录线程ID,避免同步开销,一旦有其他线程竞争即失效并升级为轻量级锁;3.轻量级锁通过CAS操作和自旋尝试获取锁,减少阻塞开销,自旋一定次数后仍无法获取则升级为重量级锁;4.重量级锁基于操作系统互斥量实现,线程竞争失败会被阻塞,涉及上下文切换,性能开销大,应尽量避免。
- Java面试题 . Java 543 2025-11-20 13:07:43
-
- 并行和并发有什么区别?
- 并行是多任务真正同时执行,需多核支持;并发是任务快速切换,单核即可实现。并行提升性能,并发提高资源利用率与响应速度。常见模型有多线程、事件驱动、Actor模型和协程。避免并发问题可使用锁、原子操作、不可变对象、并发容器、线程池等。未来趋势包括异构计算、函数式编程、反应式编程、无锁编程和自动并发。
- Java面试题 . Java 143 2025-11-20 11:07:18
-
- 什么是 CSRF 攻击,如何避免?
- CSRF攻击利用浏览器自动携带用户认证信息的特点,诱导用户执行非本意操作。例如,用户登录银行网站后访问恶意页面,页面中的隐藏请求会携带Cookie自动发起转账。防御方法包括:使用Anti-CSRFToken验证请求合法性;检查Referer或Origin头确认来源;设置SameSiteCookie属性限制跨站发送;采用双重提交Cookie机制。开发中需确保敏感操作启用防护,API避免自动携带凭证,并在所有关键页面启用完整保护措施。
- Java面试题 . Java 216 2025-11-20 10:39:05
PHP讨论组
组员:3305人话题:1500
PHP一种被广泛应用的开放源代码的多用途脚本语言,和其他技术相比,php本身开源免费; 可以将程序嵌入于HTML中去执行, 执行效率比完全生成htmL标记的CGI要高许多,它运行在服务器端,消耗的系统资源相当少,具有跨平台强、效率高的特性,而且php支持几乎所有流行的数据库以及操作系统,最重要的是

