首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >java.reflection ProceedingJoinPoint

java.reflection ProceedingJoinPoint
EN

Stack Overflow用户
提问于 2014-10-01 18:34:42
回答 1查看 181关注 0票数 2
代码语言:javascript
运行
复制
@Around("toSomething()")
public void check(ProceedingJoinPoint pJPoint){
    Object[] args=pJPoint.getArgs();
    makeSomeChange(args);
    pJPoint.proceed(args);
}

在上述情况下,在args中所做的更改是否会反映在调用方法中。

我真正要求的是,继续将此参数传递给被AspectJ截获其执行的方法。很抱歉没有问清楚。

EN

回答 1

Stack Overflow用户

发布于 2014-10-01 18:40:37

不,要更改args数组中的值,您必须执行以下操作:

代码语言:javascript
运行
复制
args[0] = process(args[0]);

在Java中,不能通过将值传递给方法来更改数组中的值,必须传递数组,或者在调用后修改数组。

我不知道您的change(...)方法做了什么,但是无论它设置什么,都不会放入args数组中

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26139384

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档