問題タブ [instantiationexception]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
java - Java InstantiationException
インターフェイスを実装するクラスを作成し、別のクラスを使用してテストしていました。
これは私が作成したクラスです。
これは、エラーが発生するテスターの一部です。投稿するコードの量を減らすために、テスターの一部を取り出しただけです。完全なテスターが必要な場合は、変更できます。
コードを実行すると、下部近くの「WeaponI Weapon」で始まるテスターの行で InstatiationException が発生します。テスターに渡す必要がある他の 2 つのクラスがあり、両方とも同じ問題を抱えていると思います。正直なところ、問題を解決する方法がわからないので、どんな助けでも大歓迎です。
android - InstantiationException: フラグメントをインスタンス化できません。クラス名が存在し、パブリックであり、パブリックである空のコンストラクターがあることを確認してください
Android Studio を使用して最初に開発したプロジェクトがあります。Xamarin (Visual Studio 2015) に変換することにしました。
すべてのコードを何時間も移植した後、設定アクティビティ (PreferenceActivity) を除いてすべてが機能します。設定を構成するPreferenceFragmentsがいくつかありますが、それらのすべてで「フラグメントをインスタンス化できません」と表示されます。これが私が得ている例外です:
Java.Lang.RuntimeException: アクティビティ ComponentInfo を開始できませんパブリックな空のコンストラクター
私は解決策をオンラインで探していましたが、見つけられないようです。どこを見ても、空のパブリックコンストラクターがあることを確認してください。内部クラスが静的でなければならない場合は。しかし、空のコンストラクターがあり、それは内部クラスではなく、独自のファイルにあります。
これが私のSettingsActivity.csです:
ここに私の GeneralPreferenceFragment.cs があります:
そして、ここに私の pref_headers.xml があります:
これは以前は問題なく機能していたので、何が問題なのかわかりません。どんな助けでも大歓迎です。
java - コードで newInstance が InstantiationException をスローするのはなぜですか?
以下に示すように、2つのプロセスがあります。私のプロセスにはそれぞれrun
とshutdown
方法があります
- ProcessA が独自のスレッド プールで実行され、ProcessB が互いに独立した独自のスレッド プールで実行されるように、Process ごとに異なるスレッド プール構成が必要です。
- また、独自のスレッド プールの各スレッド間で Process オブジェクトを共有することはできません。
以下は、私の Process クラスがどのように見えるかです。私のProcessA
,ProcessB
クラスは単に Process クラスを拡張します。そして、すべての重要なことを run メソッドで行います。
ProcessA
以下は、独自のスレッド プールを使用して実行する方法の簡単な例です。3 つのスレッドがあり、各スレッドは処理する独自の ProcessA オブジェクトを取得します。これをより一般的な方法で拡張して、私のプロセスProcessA
とProcessB
.
したがって、この問題をより一般的な方法で解決するために、以下に示すように Process ハンドラーを作成しました。
そして、これは私のメインメソッドが今見える方法です:
ProcessHandler
私のクラスのこの行は、次のようにProcess p = process.getClass().newInstance();
例外をスローします。
なぜInstantiationException
投げられるのかわかりませんか?
注意: これらの各プロセスはカフカ コンシューマーであり、一般にカフカ コンシューマーはスレッド セーフではないため、毎回新しいオブジェクトを作成してエグゼキューターに送信する必要があります。
アップデート:
これは私の ProcessA クラスは次のようになります。
java - クラス拡張機能に対して InstantiationException がスローされる
次のクラスを作成しました。クラス内の残りのコードは @Overrides です。コードの残りの部分がここに関連しているかどうかをお知らせください。追加します。
私のテストが実行されると、InstantiationException がスローされます。
API を見て、このエラーをスローする原因を調べて絞り込もうとしましたが、役に立ちませんでした。エラーの 1 つのログを次に示します。
このテストを実行しています
そして、これらのテストは失敗します