6

Apple の Objective-C には、ファイルシステム パスに似た文字列を使用してオブジェクト グラフをトラバースできる「キー値コーディング」と呼ばれるものがあります。オブジェクトが要求された「キー」に基づいて値を返すことを可能にする非公式のプロトコル (つまりインターフェース) があります。たとえば、デフォルトでは、キーによって名前が付けられたフィールドの値が返されますが、NSDictionaries などのリレーショナル コレクションは、より興味深い動作を実装できます。

疑似コードの例:

foo.bar = 新しい baz();
foo.bar.mymap = 新しいマップ();
foo.bar.mymap['bom'] = 2;

foo.valueForKeyPath("bar.mymap.bom") # 2

Javaにこのようなものはありますか?実装するのは簡単ですが、最初に見てみようと思いました。

4

3 に答える 3

5

apache の beanutils ライブラリのPropertyUtils.getPropertyは、JavaBean プロパティに対してこれを行います。

于 2009-10-21T23:14:48.883 に答える
2

うーん、他の誰かがこの質問を持っている場合、MVEL は良い賭けのようです:

http://mvel.codehaus.org/Property+Navigation

于 2009-10-21T23:15:01.830 に答える