Je souhaite enregistrer les valeurs et les types d'arguments transmis à une méthode.Essayer d'inscrire les arguments d'une méthode avec les valeurs
Ceci est une exigence d'un plus grand projet que je fais. Donc, actuellement, j'ai besoin de sauvegarder les valeurs et les types d'arguments, dans l'ordre où ils sont déclarés dans la signature de la méthode, directement à la première ligne du corps de la méthode. Cependant, je ne connaîtrai pas le nombre d'arguments. Je suis donc à la recherche d'une technique JAVA qui utilise tous ses paramètres de méthode avec leur valeur correspondante.
Le nombre d'arguments peut être très important et les noms d'arguments ne seraient pas connus.
Si cela ne peut pas arriver directement, toute suggestion sur la façon dont cela pourrait être fait sera utile.
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: La méthode stay
mentionné ci-dessus peut être quelque chose et je ne peux pas changer explicitement son code. J'utilise l'instrumentation pour ajouter quelques lignes de code dans le corps de la méthode. De cette façon, je veux ajouter un certain segment de code dans le corps de la méthode (logiquement au début) qui enregistre les valeurs des paramètres. L'enregistrement peut avoir lieu au format JSON. Leurs types peuvent être connus en utilisant javassist. Mais le goulot d'étranglement est de connaître les valeurs des paramètres.
En d'autres termes: Que ferez-vous si vous voulez stocker les valeurs de paramètres d'une méthode dans une liste (qui est déclarée dans la méthode)? Puisque les paramètres peuvent être nombreux, nous ne pouvons pas réellement coder le processus. Merci.
Que voulez-vous dire par "sauvegarder" ou "s'enrôler" exactement? Ne pouvez-vous pas simplement les stocker dans des variables de niveau classe? –
Je veux enregistrer les valeurs des paramètres avant qu'ils ne soient modifiés dans le corps de la méthode. Je veux stocker les valeurs des paramètres dans une liste, de sorte que, si je veux rappeler la méthode dans le futur, je connais les types d'arguments dans un ordre spécifié et leur valeur sauvegardée, je peux appeler la méthode sans avoir besoin pour atteindre le programme au point où la méthode a été appelée. Même pour les stocker dans une variable de niveau classe, je devrai connaître le nombre de paramètres et leurs noms. Est-ce que je me suis fait comprendre? – Gautam
Comment ne connaitrez-vous pas le nombre de params, car le nombre et le type de paramètres d'une méthode sont définis au moment de la compilation? Et qu'en est-il des objets transmis en tant que paramètres? Aurez-vous besoin de les stocker dans leur état d'origine? –