什么是AOP? aop(Aspect Oriented Programming)面向切面编程,是OOP(Object-Oriented Programing,面向对象编程)的补充和完善.OOP引入封装.继承和多态性等概念来建立一种对象层次结构,用以模拟公共行为的一个集合.但是在为分散的对象引入公共行为的时候,OOP显得无能为力.OOP擅长从上到下的关系,但是不适合从左到右的关系,例如日志.权限,这些功能的代码往往是水平地分布在对象层次中,而与所在的对象的核心功能关系不大.这些代码称为"横切&qu…