发布网友 发布时间:2022-04-24 14:14
共1个回答
热心网友 时间:2022-04-26 06:30
面向切面变成能够很大程度上较少代码量,并且可以深入到方法内部,动态给方法添加功能,比如增加日志的功能,设置前置功能,后置补充功能。Aop用到面向对象的编程中,简直就是如虎添翼。这么方便的东西为什么不使用呢?
举个例子,你要给一个方法,添加动态添加段功能,比如说做前置校验:
public void test(){如果你采用传统方法,可能需要借助动态代理来生成一个代理类,通过代理对象的invoke()方法利用反射原理给方法添加功能,但是这样做的话,会很麻烦,并且很容易出错。借助于Aop,就可以直接定义一个切面,然后声明一个切点,给方法动态添加了功能,并且不具有侵入性。