問題タブ [classcastexception]
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:XからYへのチェックされていないキャスト/castOrNullの実装方法
私はこの関数を実装しました:
これにより、コンパイラに警告が表示されます。
正確にはわかりません。私try/catch
がここでやっているのはそれをチェックしていませんか?警告を無視できますか?
私の機能は期待どおりに機能しますか?どうすれば正しく実装できますか?
私もチェックを試しましたobj instanceof Y
が、Javaがジェネリックを処理する方法のために機能しません。
ところで、この関数は私には非常に便利なようです(他のコードをよりクリーンにするため)。そのような関数はすでにJavaに存在しているのではないでしょうか。
私がそれを使いたい一例:
私のコードでは、このようなケースが頻繁に発生します。そして、これは他の何よりも読みやすく、単純だと思います。しかし、そのコードをさらに単純にする方法について何かあれば、私にもっと良い提案をしてください。
java - 「反復可能リストにキャストできません" -- List は Iterable の一種ではないか?
getElements
を返すメソッドを呼び出しましたIterable<Element>
。
これは私がしました:
これにより、次のエラーが生成されます。
a は?List
のタイプだと思いました。Iterable
java - IDE 内にない実行可能 JAR 内の ClassCastException
Eclipse 以外でアプリケーションを実行する際に問題があります。IDE 内のアプリケーションで ClassCastException が発生しない場所で ClassCastException を発生させます。特に、キャストしようとしているインスタンスの名前をターミナルに出力し、IDE 内では「NestedEngineImpl」などの正しいタイプを提供しますが、IDE の外部では「EngineImpl」を提供しますが、EngineImpl を NestedEngineImpl にキャストすることはできません。 . NestedEngineImple は EngineImpl を拡張します。実行可能 jar は、Eclipse の Export Runnable JAR ファイルを使用して作成されています。jar が開き、例外が発生するまで実行されます。
どんなアドバイスでも大歓迎です。
java - 親の抽象クラスに型キャストすることは可能ですか?
私はC#プロジェクトをJavaに移植しているところです。次のようなコードのチャンクがあります。
そして、他の場所で...
さらに他の場所...
そして最後に、さらに他の場所で....
e.Handlerは、FirstInnerClassまたはSecondInnerClassのいずれかのタイプにすることができます。次のエラーを引き起こしているのは、(A)への会話e.Handlerです。
デバッグ出力で、e.Handlerが実際にFirstOuterClass$FirstInnerClassのクラスタイプであることを確認しました。したがって、C#とJavaのキャストに違いがあるか(可能)、またはどこかで正しい構文を提供していません(可能です)。
(HashMapsの目的のように、コード全体を貼り付けなかったことをお詫びします。実際の問題を混乱させたくありません。基本的には、文字列キーと抽象Aを拡張するいくつかのクラス間のマッピングです。)
java - Java Generics:型キャストの問題(ClassCastException)
Javaのジェネリックオブジェクトをジェネリックオブジェクトを拡張する型に適切にキャストする方法を理解するのに問題があります。
たとえば、次のような設定があるとします。
上記のようなコードを実行すると、一貫してClassCastExceptionがスローされますが、そのようなものは完全には理解していません。上記のようなシナリオを正しく設定する方法についてのアドバイスをいただければ幸いです。つまり、params.getSubSet(...)メソッドから返されるSomeCustomMapオブジェクトをParametersオブジェクトに適切にキャストするにはどうすればよいでしょうか。
前もって感謝します!
java - jettyとjpaを使用したClassCastException
Jetty(7.2.0または8.0.0.M1)でjersey、guice、およびjpaに基づいてアプリケーションを実行しようとすると、JNDIを使用していなくても、次のエラーが発生します。
対応するpersistence.xmlは次のとおりです
何か案は?
java - スーパークラスと ClassCastException の拡張
私はオーバーライドしたい2つのメソッドを持つスーパークラスを持っています。これが私のコードです:
SomeSuperClass オブジェクトをパラメーターとして渡すコンストラクターがあり、次に何をするか:
それは正しいようですが、実行中に SomeSuperClass で java.lang.ClassCastException を取得しています。
SomeSuperClassObject を作成すると、オーバーライドされたメソッドが失われます。
キャストでは、Eclipse でエラーが発生していなくても、アプリケーションがクラッシュします。つまり、自分のメソッドで SomeSuperClass をオーバーライドして、OtherConstructor で使用する SomeSuperClass オブジェクトを取得するにはどうすればよいでしょうか? 重要な場合、このコードは Android アプリ用です。
java - クラスキャストの例外:com.sun.org.apache.xerces.internal.jaxp.DocumentBuilderFactoryImpl
jbossに問題があります。.warをサーバーにデプロイしようとすると、次のエラーが発生します。
java.lang.ClassCastException: com.sun.org.apache.xerces.internal.jaxp.SAXParserF
actoryImpl cannot be cast to javax.xml.parsers.SAXParserFactory
そこから、ライブラリの衝突があることは非常に明白です。そこで、jaxp-ri-1.4.1.jarによって発生したxercesを含むjarファイルを削除しました。ここで、再デプロイしようとすると、この新しいエラーが発生します。
xmlパーサーが見つからないと不平を言っているところ。
だから、今私の質問は、誰もが解決策になることができるものを知っているかということです。xercesパッケージを含まないjaxpjarファイルはありますか?
アップデート
ここで提案されているように実行しましたが、新しいエラーが発生しました。
これは、SaxParserFactoryを含む削除したjarの1つからのクラスです:(
android - android.app.Application での android classcastexception
次のアプリケーションを実行すると、次の例外が発生します
アクティビティ:
応用:
マニフェスト:
classloader - Jetty-7.1.6.v20100715 で X509Certificate を取得すると ClassCastException がスローされる
私が書いたフィルターは ClassCastException をスローしました
[Ljava.security.cert.X509Certificate; java.security.cert.X509Certificate にキャストできません
ServletRequest 属性から抽出されたオブジェクトをキャストしようとしたとき、つまり
深く掘り下げると、このような例外は、同じクラスタイプですが、異なるクラスローダーが原因である可能性が最も高いことがわかりました。これを解決するにはどうすればよいですか?
ありがとう
次のSpring 3構成を使用して、Jetty 7の断片をロードしました