9

Java では、配列はオブジェクトです。私の質問は...新しい配列が作成されているときに呼び出される Object コンストラクターですか? この事実を利用して、構築中の配列の長さをチェックする追加のバイトコードを Object コンストラクターに装備したいと考えています。それはうまくいくでしょうか?

4

5 に答える 5

6

JVM仕様によると、「配列は、別個の命令セットを使用して作成および操作されます。」したがって、配列はオブジェクトのインスタンスですが、他のオブジェクトと同じように初期化されるわけではありません(リンクアンカーから上にスクロールするとわかります)。

于 2009-01-23T22:54:33.197 に答える
0

バイトコード操作を使用して、新しい配列が作成される場所にチェックを配置できます。

于 2009-01-23T22:56:22.583 に答える
0

いいえ。私はこれをAspectJメーリングリストで見つけました:http://dev.eclipse.org/mhonarc/lists/aspectj-users/msg02975.html

おそらく理由で配列について質問するでしょうが、可能であれば、コレクションクラスに切り替えてみませんか。これにより、傍受して検証を行う多くの機会が得られます。

于 2009-01-23T23:26:16.470 に答える
0

ネイティブ配列を派生させてコンストラクターをオーバーライドできないため、そうは思いません

于 2009-01-23T22:43:45.620 に答える