タグ付けされた質問 「reflection」

リフレクションは、実行時にプログラムの構造や動作を観察および/または変更するプログラムの機能です。リフレクションは、サポートするプログラミング言語に依存しています。このタグを使用する場合は、使用しているプログラミング言語にタグを付けてください。

13
Javaの別のクラスからプライベートフィールドの値を読み取る方法は?
サードパーティに設計が不十分なクラスがあり、JARそのプライベートクラスの1つにアクセスする必要があるフィールドのます。たとえば、プライベートフィールドを選択する必要があるのはなぜですか? class IWasDesignedPoorly { private Hashtable stuffIWant; } IWasDesignedPoorly obj = ...; リフレクションを使用して値を取得するにはどうすればよいstuffIWantですか?

11
Javaリフレクションを使用してプライベート静的最終フィールドを変更する
private static finalフィールドを持つクラスがありますが、残念ながら、実行時に変更する必要があります。 リフレクションを使用すると、次のエラーが発生します。 java.lang.IllegalAccessException: Can not set static final boolean field 値を変更する方法はありますか? Field hack = WarpTransform2D.class.getDeclaredField("USE_HACK"); hack.setAccessible(true); hack.set(null, true);




10
Reflectorに代わるオープンソース?[閉まっている]
現在のところ、この質問はQ&A形式には適していません。事実、参考文献、専門知識によって回答が裏付けられることを期待していますが、この質問は、討論、議論、投票、または拡張ディスカッションを求める可能性があります。この質問を改善でき、再開できると思われる場合は、ヘルプセンターにアクセスしてください。 7年前休業。 ロックされています。この質問とトピックへの回答はロックされています。質問はトピックから外れていますが、歴史的に重要です。現在、新しい回答や相互作用を受け入れていません。 RedGateのReflectorに代わるオープンソースのことを誰かが知っているかどうかを尋ねるだけですか?Reflectorに似たツールが実際にどのように機能するかを調べてみたいと思います。 あなたは自由しかしを知っている場合は、ないリフレクターにオープンソースの代替には、以下の関連質問に答えることができます。 .NET Reflectorよりも優れている点は何ですか? 概要-2011年5月11日更新 提案されているさまざまなオープンソースプロジェクトとツールの簡単なまとめ: Common Compiler Infrastructure(CCI) モノセシル ILSpy dnSpy(ILSpyのフォーク、プロジェクトはオリジナルよりもアクティブに見えます) Dotnet ILエディター(DILE) IL.View モノフレクター(2011年4月の時点で非アクティブ) 次のリソースも参考になります。 TypeView.cs .NETの分解に関するJason Haleyのメモ Adrian Bankの最近のブログ投稿には、以下に記載されていないいくつかのオプションを含む、いくつかのReflectorの代替案がまとめられています。 Mark Lichtenbergの詳細なブログ投稿。いくつかのオープンソースの選択肢(DILE、ILSpy、MonoDevelopを使用したMono Cecil)をReflectorと比較しています。

16
Pythonモジュールのすべての関数をリストする方法は?
私のシステムにPythonモジュールがインストールされていますが、その中で使用できる関数/クラス/メソッドを確認できます。 それぞれについてdoc関数を呼び出したいのですが。Rubyでは、ClassName.methodsのようにして、そのクラスで使用できるすべてのメソッドのリストを取得できます。Pythonにも同様のものはありますか? 例えば。何かのようなもの: from somemodule import foo print foo.methods # or whatever is the correct method to call

15
Java文字列は本当に不変ですか?
StringJavaでは不変であることは誰もが知っていますが、次のコードを確認してください。 String s1 = "Hello World"; String s2 = "Hello World"; String s3 = s1.substring(6); System.out.println(s1); // Hello World System.out.println(s2); // Hello World System.out.println(s3); // World Field field = String.class.getDeclaredField("value"); field.setAccessible(true); char[] value = (char[])field.get(s1); value[6] = 'J'; value[7] = 'a'; value[8] = 'v'; value[9] = 'a'; value[10] = '!'; …

3
Goのタグの用途は何ですか?
でゴー言語仕様、それはタグの簡単な概要を述べて: フィールド宣言の後には、オプションの文字列リテラルタグが続く場合があります。これは、対応するフィールド宣言のすべてのフィールドの属性になります。タグは反射インターフェースを介して表示されますが、それ以外の場合は無視されます。 // A struct corresponding to the TimeStamp protocol buffer. // The tag strings define the protocol buffer field numbers. struct { microsec uint64 "field 1" serverIP6 uint64 "field 2" process string "field 3" } これは非常に短い説明IMOです。これらのタグの用途を誰かに教えてもらえないかと思いました。
392 go  reflection  struct 


14
C ++にリフレクションがないのはなぜですか?
これはやや奇妙な質問です。私の目的は、言語設計の決定を理解し、C ++での反映の可能性を特定することです。 なぜC ++言語委員会は言語でのリフレクションの実装に向かわなかったのですか?仮想マシン(Javaなど)で実行されない言語では、反射が難しすぎますか? C ++のリフレクションを実装するとしたら、どのような課題がありますか? リフレクションの使用法はよく知られていると思います。エディターをより簡単に作成でき、プログラムコードが小さくなり、単体テスト用にモックを生成できるなどです。しかし、リフレクションの使い方についてもコメントしていただければ幸いです。
337 c++  reflection 

5
タイプがサブタイプかオブジェクトのタイプかを確認するにはどうすればよいですか?
型がC#の別の型のサブクラスであるかどうかを確認するのは簡単です。 typeof (SubClass).IsSubclassOf(typeof (BaseClass)); // returns true ただし、これは失敗します。 typeof (BaseClass).IsSubclassOf(typeof (BaseClass)); // returns false OR演算子を使用したり拡張メソッドを使用したりせずに、型が基本クラス自体のサブクラスORのいずれであるかを確認する方法はありますか?
335 c#  reflection  types  subclass 

11
リフレクションを使用してプライベートメソッドを呼び出すにはどうすればよいですか?
私のクラスにはプライベートメソッドのグループがあり、入力値に基づいて動的に呼び出す必要があります。呼び出しコードとターゲットメソッドの両方が同じインスタンスにあります。コードは次のようになります。 MethodInfo dynMethod = this.GetType().GetMethod("Draw_" + itemType); dynMethod.Invoke(this, new object[] { methodParams }); この場合、GetMethod()プライベートメソッドは返されません。プライベートメソッドを見つけBindingFlagsられるGetMethod()ようにするには、何を提供する必要がありますか?


13
java.lang.reflect.InvocationTargetExceptionの原因は何ですか?
まあ、私はそれを引き起こす可能性があるものを理解して読んでみましたが、それを得ることができません: 私のコードのどこかにこれがあります: try{ .. m.invoke(testObject); .. } catch(AssertionError e){ ... } catch(Exception e){ .. } それは、あるメソッドを呼び出そうとするInvocationTargetExceptionと、他の予期される例外(具体的にはArrayIndexOutOfBoundsException)の代わりにスロー されるということです。呼び出されるメソッドを実際に知っているので、このメソッドコードに直接進み、スローするはずの行にtry-catchブロックを追加しましたArrayIndexOutOfBoundsExceptionがArrayIndexOutOfBoundsException、期待どおりに実際にスロー されました。それでも上に行くと、どういうわけかInvocationTargetException、上記のコードに変更され、catch(Exception e) eは 予想どおりではInvocationTargetExceptionありませんArrayIndexOutOfBoundsException。 何がそのような動作を引き起こす可能性がありますか、またはどのようにしてそのようなことを確認できますか?

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.