有 Java 编程相关的问题?

你可以在下面搜索框中键入要查询的问题!

java在我的方法修改了参数后,我怎样才能得到参数对象?

在方法做了一些修改之后,我试图使用Spring AOP/AspectJ来访问我的参数

例如:

public void changeValueOnFoo(Foo fooToModify) {
    fooToModify.changeValue("1");
}

@Around("execution(* com.my.FooFunctions.changeValueOnFoo(..)")
public void interceptFoo(ProceedingJoinPoint jp) {
    Foo f = (Foo) jp.getArgs()[0];
    System.out.println(f.getValue()); // will print "1"
    jp.proceed(); 
    Foo modifiedf = jp.getArgs()[0];
    System.out.println(modifiedF.printValue()); // will print "2"?
}

这样的事情可能吗?处理,然后在该方法修改后调用参数?或者getArgs只是持有一个指向参数原始状态的指针,所以这是不可能的


共 (0) 个答案