Java干货小知识,JavaAOP是什么?_java自学_java相关资讯_成都java培训机构

Java干货小知识,JavaAOP是什么?

  • 作者:创始人
  • 发表时间:2021-12-23 10:05:35

在大家学习Java过程中会接触到AOP也就是面向方面的编程,那么JavaAOP是什么呢?

AOP(Aspect-OrientedProgramming,面向方面的编程)可以说是对OOP(Object-OrientedPrograming,面向对象编程)的补充和改进。OOP引入了封装、继承和多态等概念,以建立一套能够模拟一组公共行为的对象层次。OOP在需要为分散的对象引入公共行为时,OOP就显得无能为力了。也就是,OOP让你可以定义自上而下的关系,但是却不能定义从左到右的关系。比如登录功能。logging代码通常会在所有的对象层次上水平分布,而与其分散到的对象的核心功能没有任何关系。对安全、异常处理、透明的持续性等其它代码类型也是如此。这样一个分散在各地的独立代码叫做横切(cross-cutting),在OOP设计中,它会导致大量重复代码,并且不利于各个模块的重用。
Java干货小知识

AOP技术却正好相反,它使用一种叫做“横切”的技术,分割拆解封装对象内部,把影响多个类的通用行为封装到可重用模块中,把它们命名为"Aspect",即方面。"方面",简单地说,就是封装那些与业务模块没有关系但共同为业务模块调用的逻辑或职责,这有助于减少系统中的重复代码,降低模块之间的耦合,并有利于今后的操作和维护。AOP表示一种水平关系,如果“对象”是一种空心圆柱,它封装了对象的属性和行为;然后,面向方面编程的方法,就像一把利刃,将这些空心圆柱体切开,以获取内部信息。切面,即切面,又称切面。接着,它又用巧夺天功的巧手将这些剖开的切面复原,没有留下痕迹。

AOP采用“横切”技术,将软件系统分成两部分:核心关注和横切关注。商业过程的主要过程是核心问题,而与其关系较小的部分是横切关注点。横切关注点的一个特征是,它们常常出现在核心关注点的多个地方,而这些地方基本上是相似的。例如权限认证,日志,交易处理。Aop的角色是分离系统中的多个关注点,实现了核心关注点和交叉关注的分离。就像Avanade的高级方案架构师AdamMagee所说,AOP的核心理念是“把应用程序中的业务逻辑和公共服务分离开来,为它提供支持。”

JavaAOP是什么?关注知了堂成都Java培训,带你了解更多相关问题和相关知识小干货。