タグ

reflectionに関するKshi_Kshiのブックマーク (2)

  • リフレクションによるクラスのメンバーへのアクセスについて - M12i.

    佳境を(ちょっと残念なかたちで)迎えている現在の職場ですが、SpringやStrutsといういずれにせよリフレクションAPIの利用を基礎にしたフレームワークを使用するなかで、知ることになった事実についてメモ。 Javaのリフレクションの一番わかりやすい形態は、任意のクラスのメンバー(メソッド、フィールド、そしてコンストラクタ)への実行時解決型アクセスでしょう。 このうちメソッドとフィールドについては、任意のクラスについて名前(とメソッドの場合は引数型も)を指定してメソッドへアクセスする方法と、そのクラスのメソッドもしくはフィールドすべてを格納した配列を取得してアクセスする方法とがあります。 重要なことはさらにこれらの2種類のAPIには、 そのクラスが継承・実装により備えているpublicなメソッドを返すものと、 そのクラスがまさに自分自身で宣言しているメソッドをアクセスレベルに関係なく返す

    リフレクションによるクラスのメンバーへのアクセスについて - M12i.
    Kshi_Kshi
    Kshi_Kshi 2013/06/02
    リフレクションの話 declaredMethod/Field() はそのクラスで宣言したメソッド、フィールドを取得するので、継承元の情報は取得できない。
  • Javaリフレクションメモ(Hishidama's Java Reflection Memo)

    Javaでは、クラス生成やメソッド呼び出しをソース上に直接書いてコンパイル時に決定されるだけでなく、文字列(クラス名)を使ってクラスを生成したり、 メソッド名の文字列を使ってメソッドを呼び出したりすることが出来る。 クラス(インスタンス)生成 [/2015-04-26] Classのメソッド [/2021-03-21] instanceof [2007-02-16] Classからのインスタンス生成(非推奨) [/2018-04-30] インスタンス生成 [/2013-08-06] 総称型による限定 [2007-05-02] 内部クラスのインスタンス生成 [/2008-02-10] メソッド呼び出し staticメソッド実行 [/2017-07-23] メソッド実行(引数なし) [/2017-07-23] メソッド実行(引数あり) [/2017-07-23] 可変引数メソッド [/2015

  • 1