待辦事項 #16006

内部クラスのインスタンス生成でObject型が返る

啟用日期: 2009-04-07 18:20 最後更新: 2009-04-13 17:06

回報者:
負責人:
(無)
類型:
狀態:
開啟
元件:
(無)
里程碑:
(無)
優先權:
5 - 中
嚴重程度:
5 - 中
處理結果:
修正
檔案:

細節

public class Piyo {
	public class Foo {
	}
	public static void main(String[] args) throws Exception {
		Object o = FastReflect.newInstance("test.Piyo$Foo");
		System.out.println(o.getClass().getName());
	}
}

とした場合、Object型のインスタンスが返される。

エンクロージング型内部クラスFooのnewの場合、

	Piyo piyo = new Piyo();
	Object o = FastReflect.newInstance("test.Piyo$Foo", piyo);

といったように外部クラスのインスタンスを第一引数で渡す必要があるが、これを渡さなかった場合、 コンストラクタを発見できずにObject型のインスタンスを生成している様子。 メソッドの仕様としてはNoSuchMethodExceptionが投げられるべき。

Ticket History (2/2 Histories)

2009-04-07 18:20 Updated by: nagise
  • New Ticket "内部クラスのインスタンス生成でObject型が返る" created
2009-04-13 17:06 Updated by: matya
  • Details Updated
  • 處理結果 Update from to 修正
評語

nagiseさん。ご指摘ありがとうございます。バージョン1.0.1にて修正いたしました。

Attachment File List

No attachments

編輯

You are not logged in. I you are not logged in, your comment will be treated as an anonymous post. » 登入