メソッドに渡される引数の値と型を保存します。メソッドの引数を値で登録しようとしています
これは私がやっている大きなプロジェクトの要件です。だから、現在、メソッド本体の最初の行にあるメソッドシグネチャで宣言されている順序で、引数の値と型を保存する必要があります。しかし、私は議論の数を知りません。 私は、そのメソッドのパラメータを対応する値で登録する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の数を知りませんか?パラメータとして渡されるオブジェクトはどうですか?それらを元の状態で保管する必要がありますか? –