HOWTO · Java
Java の未解決のコンパイルエラーを修正
この記事では、Java で未解決のコンパイルエラーを修正する方法を紹介します。
このページの内容
Java は、JVM、JRE、および JDK の 3つのコンポーネントで機能します。
JVM(Java 仮想マシン)は物理的に存在せず、バイトコードを実行するための環境を提供します。このバイトコードはプラットフォームに依存しないため、別のマシンでの実行にも慣れることができます。
同様に、JRE は、システムにプログラムをロードするための JVM とサポートライブラリおよび jar を保持するランタイム環境です。また、JDK は、エンタープライズレベルのソリューションを構築および開発するために必要な Java DevelopmentKit です。
すべてのコンポーネントが一緒になって、適切にビルドおよび実行するためのアプリケーションを構成します。関数が壊れた場合、コンパイル時または実行時の問題が発生します。
Java 言語は、最初にソースコードをクラスファイルに変換するために機能します。また、ランタイム環境では、クラスファイルまたはバイトコードを使用して実際のプログラムを実行します。
ソースコードからクラスファイルまたはマシンが理解できるバイトコードへの変換プロセスは、コンパイルと呼ばれます。コンパイルは、アプリケーションを実行する前に渡す必要があるアプリケーション実行プロセスの重要な部分です。
コンパイルプロセスでは、構文とセマンティクスの問題、最適化の問題を解決し、コンパイラの実際の作業である機能を正しく使用します。JVM は、最初にコードをロードし、ロードされた変更を確認してアプリケーションを実行することによってアプリケーションを実行し、最後にコードを実行するためのランタイム環境を作成します。
以下は、Java でのコンパイルの問題を示すコードブロックです。
public class CompilationIssues {
public static void main(String[] args) {
MyClass myClass = new MyClass();
System.out.println("The instance of MyClass is : " + myClass);
}
}
CompilationIssues クラスは、上記のコードブロックの main メソッドを保持します。
このメソッドには、新しいキーワードを使用して作成される MyClass のインスタンスがあります。オブジェクトには、新しく作成されたオブジェクトのオブジェクトを出力するための print-stream 関数が追加されます。
上記のプログラムに関連する所見は次のとおりです。
Intellij、Eclipse、Netbeans などの IDE を使用すると、MyClass クラスが使用できないことを示すエラーが赤色で表示されます。
スコープにクラスが存在する場合、エディターはクラスをインポートするためのさまざまな提案を提供します。クラス名が見つからない場合は、同じ名前のパッケージに別の新しいクラスを作成することをお勧めします。
IDE のオプションのスクリーンショットは次のとおりです。
ファイルがメモ帳で書き込まれる単純な Java ファイルであるか、特別な Java エディターがない場合は、保存とコンパイルが解決策です。
そうすれば、以下の形式でエラーが発生します。さらに、実際の問題がどの行に存在するかについての提案を提供します。エラー定義とスタックトレースのみで問題を根絶または解決できます。
以下は、上記のコンパイル問題エラーの出力です。
C :\Users\IdeaProjects\Test\src\main\java\CompilationIssues.java : 3 : 9 java
: cannot find symbol symbol : class MyClass location : class CompilationIssues
このような問題の解決策は、スタックトレースに鋭敏な目を向けることです。
問題を明確に観察して理解し、解決策を提供することができます。上記の問題は、存在しない場合はクラスを作成することで解決できます。
また、エラーを示すクラスがすでに存在する場合は、import ステートメント import org.test.MyClass ステートメントを使用して、main メソッドを保持し、問題が入力されるクラスにパッケージをインポートします。このインポートステートメントは、コンパイルの問題を解決します。
コンパイルは、Java で定義されたルールがその条件を満たさない場合にも発生する可能性があります。例外処理、到達不能コード、スコープまたは変数、パブリックプライベートアクセス修飾子の使用法と同様に、変数の初期化はコンパイルの問題の例の一部です。
最悪の場合、互換性のないバージョンの Java が存在する可能性があります。Java 11 の機能と同様に、環境の Java 変数を Java 8 として設定します。
適切なメモを取り、プログラムのコンパイル時に表示されるエラーメッセージを観察する必要があります。問題を迅速かつ適切に解決するのに役立ちます。