Javaのリフレクション 実装クラスの作成
2023-09-18 07:53:01
質問
Class someInterface = Class.fromName("some.package.SomeInterface");
を実装した新しいクラスを作成するにはどうしたらよいでしょうか?
someInterface
?
新しいクラスを作成し、それを関数に渡す必要があります。
SomeInterface
を引数として必要とする関数に渡す必要があります。
どのように解決するのですか?
インターフェースを実装しているように見せかけるものをその場で作ることは、実はそれほど難しいことではありません。以下のように
java.lang.reflect.Proxy
を実装した後
InvocationHandler
を実装し、あらゆるメソッドコールを処理します。
もちろん、実際のクラスは BCEL .
もしこれがテスト目的であれば、以下のようなモッキングフレームワークを見るべきでしょう。 jMock と イージーモック .
関連
-
[解決済み] リフレクションを使用して文字列からプロパティ値を取得する
-
シェルコマンドやスクリプトのJavaコール
-
linux ant Resolve error: main class not found or couldn't be loaded org.apache.tools.ant.launcher.
-
[解決済み] JavaでInputStreamを読み込んでStringに変換するにはどうすればよいですか?
-
[解決済み] JavaでNullPointerExceptionを回避する方法
-
[解決済み] 配列からArrayListを作成する
-
[解決済み] Javaでメモリーリークを発生させるにはどうしたらいいですか?
-
[解決済み] リフレクションとは何か、なぜ有用なのか?
-
[解決済み] インターフェースと抽象クラス(一般的なOO)
-
[解決済み】Android UserManager.isUserAGoat()の正しい使用例?)
最新
-
nginxです。[emerg] 0.0.0.0:80 への bind() に失敗しました (98: アドレスは既に使用中です)
-
htmlページでギリシャ文字を使うには
-
ピュアhtml+cssでの要素読み込み効果
-
純粋なhtml + cssで五輪を実現するサンプルコード
-
ナビゲーションバー・ドロップダウンメニューのHTML+CSSサンプルコード
-
タイピング効果を実現するピュアhtml+css
-
htmlの選択ボックスのプレースホルダー作成に関する質問
-
html css3 伸縮しない 画像表示効果
-
トップナビゲーションバーメニュー作成用HTML+CSS
-
html+css 実装 サイバーパンク風ボタン
おすすめ
-
java.sql.SQLException: executeQuery()でデータ操作文を発行できません。
-
Java の switch case 文で必要な定数式の問題の解決法
-
プロジェクトの依存関係を解決できない。
-
無効なメソッド宣言
-
-bash: java: コマンドが見つからない 解決方法
-
SocketException java.netの4つの例外解決策。
-
keytool error: java.io.FileNotFoundException: cacerts (アクセス拒否されました。)
-
Java appears タイプEを囲むインスタンスがアクセスできない。
-
Java基礎 - マッピングとQ/A
-
Zipファイルの圧縮・解凍にantを使用する