Java教程

核心概念

本文主要是介绍核心概念,对大家解决编程问题具有一定的参考价值,需要的程序猿们随着小编来一起学习吧!

核心概念

aop:Aspect-Oriented Programing 面向切面编程

代理目标 (proxy target)

谁被别人代理,就是代理目标

代理对象 (proxy object)

谁代理别人,谁就是代理对象

执行点(execution point)

每个正在执行的方法就是一个执行点

每个方法都可能成为一个执行点,只要它被调用导致它在执行

方位

before 方法执行前
after-return 方法返回后 / after-throw 方法抛出异常后
after 方法执行后

around 方法执行前 和 方法执行后

try{
    // before
    int result = MathHelper.div( 100 , 2 );
    // after-return
} catch ( Exception e ) {
    // after-throw
} finally {
    // after
}

连接点(Join Point)

连接点=执行点+方位

连接点就是Advice 可能插入的位置

Advice

在连接点处添加的代码就是Advice

切点 (Pointcut)

对连接点进行筛选的条件就是切点

类似于SQL语句的WHERE子句

将来我们可以通过切点表达式来选择连接点

切面 (Aspect)

切面 = 切点+ Advice

切点用于确定在哪里加入Advice

Advice用于确定加入什么样的代码

织入 (weaver)

将需要添加的Advice添加到目标位置的过程就是织入

织入顺序:确定Advice的天机啊顺序

织入方式:

​ 编译期织入:即在将 .java编译成 .class时就织入相应的代码

​ 类加载器织入:即在类加载时使用特殊的"类加载器"织入相应的代码

​ 运行期织入: 即在运行时动态织入相应的代码

这篇关于核心概念的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!