争取用方法的参数我想保存传递给方法的参数的值和类型。试图用值
这是我正在做的一个更大项目的要求。所以,现在我需要按照它们在方法签名中声明的顺序保存参数的值和类型,就在方法体的第一行。但是,我不会知道参数的数量。 因此,我正在寻找一种JAVA技术,将其所有方法参数与其相应的值进行比较。
参数的数量可能非常大,参数的名称将不可知。
如果这不能直接发生,任何有关如何做到这一点的建议将会有所帮助。
public void stay(String temp1, int temp2, double temp3){
//**--code to save the values of temp1, temp2, temp3 somehow--**
//method body that will change the value of parameters
}
EDIT 1: 上面提到的方法stay
可以是任何事物,我不能明确地改变其代码。我正在使用工具在方法主体中添加几行代码。这样,我想在方法主体中添加一定的代码段(逻辑上在开头),它保存了参数的值。可以使用JSON格式进行保存。他们的类型可以通过使用javassist来知道。但瓶颈是要知道参数的值。
换个角度来看: 如果你想将一个方法的参数值存储在一个列表中(这是在方法中声明的),你会做什么?由于参数的数量可能很大,我们不能真正对过程进行硬编码。 谢谢。
你是指“保存”还是“登记”的意思?你能不能把它们存储在类级变量中? –
我想在参数的值在方法体中被更改之前保存它们的值。我想将参数的值存储在列表中,因此,如果我想在将来某个时候重新调用该方法,我知道指定顺序的参数类型及其保存的值,我可以调用该方法而不需要在调用方法的地方到达该程序。即使将它们存储在类级变量中,我也必须知道参数的数量以及它们的名称。 我让自己清楚了吗? – Gautam
你怎么会不知道params的数量是多少,因为一个方法的params的数量和类型是在编译时设置的?那么作为参数传递的对象呢?你需要将它们保存在原始状态吗? –