AOP 面试题及详细答案(实战完整版).docxVIP

  • 0
  • 0
  • 约5.19千字
  • 约 8页
  • 2026-09-20 发布于河北
  • 举报

AOP 面试题及详细答案(实战完整版).docx

AOP面试题及详细答案(实战完整版)

一、基础概念类(初级必问)

1、什么是AOP?核心作用是什么?

参考答案:

AOP全称面向切面编程,是一种和OOP面向对象编程互补的编程思想。OOP是纵向的、基于类和对象的代码复用,而AOP是横向的,用来对系统中重复的通用逻辑进行统一抽取和增强。

简单说就是:在不修改原有业务代码的前提下,对方法进行功能增强。

核心作用:解耦通用非业务逻辑,避免代码冗余。比如日志记录、事务控制、权限校验、性能监控、缓存处理、异常统一处理这些通用逻辑,不用在每个业务方法里重复写。

2、AOP和OOP的区别?为什么有了OOP还需要AOP?

参考答案:

OOP解决的是业务模块纵向复用,通过类、继承、多态封装业务差异和通用业务能力,但对于跨模块、跨类的横向通用逻辑无能为力。

比如日志、事务,几乎所有业务方法都要用,用OOP只能重复抄写或者用父类继承,会导致代码冗余、侵入性强、维护困难。

AOP专门解决横向公共逻辑复用,可以统一拦截所有目标方法,统一增强,完全不侵入原有业务代码,符合开闭原则。

OOP:垂直分层,聚焦业务对象

AOP:横向切面,聚焦通用行为

3、SpringAOP中的核心术语有哪些?分别解释一下

参考答案:

这是面试高频基础点,核心六个术语:

连接点(JoinPoint):可以被拦截的点,Spring中特指所有的

文档评论(0)

1亿VIP精品文档

相关文档