[解決済み] ランタイムエラーとコンパイラーエラーの違いは何ですか?[重複あり]
2022-03-13 23:01:26
質問
ploymorphismに関する私のプロフのスライドの1つに、いくつかのコメント付きのこのコード片があります。
discountVariable = //will produce
(DiscountSale)saleVariable;//run-time error
discountVariable = saleVariable //will produce
//compiler error
見ての通り、最初のキャスト文では 実行時 エラーが発生し、もう一方では コンパイルエラー .
これらのエラーの原因は何ですか?また、それぞれのエラーの違いは何ですか?
解決方法は?
ランタイムエラーは、コードが実際に実行されているときにのみ発生します。 これらは最も難しいもので、プログラムのクラッシュやコードのバグにつながり、その原因を突き止めるのは困難です。
例えば、「"hello"」という文字列を整数に変換しようとした場合です。
string helloWorld = "hello";
int willThrowRuntimeError = Convert.ToInt32(helloWorld);
コンパイラはこれを問題視しないかもしれませんが、実行時にはエラーが発生します。
コンパイラーエラーは、コードの不正確さによるものです。コンパイラーは、コンパイルできないもの、つまり実行できないものに対して警告を発するためにエラーを投げつけます。
コンパイラエラーの例としては、以下のようなものがあります。
int = "this is not an int";
お役に立てれば幸いです。
関連
-
eclipse の実行時に java 仮想マシンが見つからなかった
-
[解決済み] JavaにおけるHashMapとHashtableの違いは何ですか?
-
[解決済み] Javaにおけるpublic、protected、package-private、privateの違いは何ですか?
-
[解決済み] serialVersionUIDとは何ですか、またなぜそれを使用する必要がありますか?
-
[解決済み] リフレクションとは何か、なぜ有用なのか?
-
[解決済み] StringBuilderとStringBufferの違いについて
-
[解決済み] wait()とsleep()の違いについて
-
[解決済み] Javaクラスにおけるcanonical name、simple name、class nameの違いは何ですか?
-
[解決済み] JDKとJREの違いは何ですか?
-
[解決済み】サーブレットはどのように動作するのですか?インスタンス化、セッション、共有変数とマルチスレッド
最新
-
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.util.NoSuchElementException 原因解析と解決方法
-
eclipse アクセス制限です。タイプ 'xxx' は API ではありません(必須ライブラリ '' の制限)。
-
Spring Boot による HTTPS アクセスの設定
-
SpringBootApplication を型解決できない。
-
コンストラクタの呼び出しは、コンストラクタのエラー理解の最初のステートメントである必要があります。
-
eclipse の実行時に java 仮想マシンが見つからなかった
-
Exception: java.util.NoSuchElementException: 行が見つかりません
-
このラインで複数のマーカーを解決する方法
-
Maven Pluginの実行がライフサイクル設定の対象外であるエラーの解決
-
[解決済み] ランタイムとコンパイルタイム