AOP面试题及详细答案.docxVIP

  • 2
  • 0
  • 约1.08万字
  • 约 12页
  • 2026-05-19 发布于河北
  • 举报

AOP面试题及详细答案

一、基础认知类(入门必问)

1.什么是AOP?它的核心作用是什么?

详细答案:AOP全称是Aspect-OrientedProgramming,面向切面编程,它不是一种技术,而是一种编程思想。核心是“解耦”——将项目中重复出现、与业务逻辑无关的代码(比如日志、事务、权限校验)抽离出来,做成一个“切面”,然后在不修改原有业务代码的前提下,通过配置或注解,将切面代码动态切入到业务方法的指定位置(比如方法执行前、执行后)。

它的核心作用有两个:一是减少代码冗余,不用在每个业务方法里都写日志、事务等重复代码;二是降低业务与非业务代码的耦合,后续修改日志格式、调整事务策略时,只需要修改切面代码,不用改动业务逻辑,便于维护。

举个实际开发中的例子:项目中所有接口都需要打印“请求参数”和“响应结果”,如果没有AOP,就要在每个接口方法里都写打印日志的代码;用了AOP后,只需要写一个日志切面,配置好切入所有接口方法,就能自动实现所有接口的日志打印,不用修改任何接口代码。

2.AOP和OOP的区别与联系是什么?

问题解析:考察对两种编程思想的理解,重点说明“互补关系”,避免只说区别不说联系,贴合实际开发中的应用场景。

详细答案:首先明确两者的联系:OOP(面向对象编程)和AOP都是为了降低代码耦合、提高代码复用性,AOP是OOP的补充,不是替代。

区别主要有3点,结合

文档评论(0)

1亿VIP精品文档

相关文档