Javaを勉強している初心者です。現在「スッキリわかるJava入門 第2版」という本で勉強をしているのですが、第8章のオブジェクト指向でインスタンスを作るクラスファイルとメインクラスファイルを本の通り作成後、コンパイルしたのですが、実行すると
「メインクラスXXXが見つからなかったか、ロードできませんでした」というエラーとなります。原因が全く分かりません。どなたかご教授頂けないでしょうか。
ちなみに作成したjavaファイルは下記の2つになります。
①Main.java
public class Main {
public static void main(String[] args){
Hero h = new Hero();
h.name = "ミナト";
h.hp = 100;
System.out.println("勇者" + h.name + "を生み出しました!");
h.sit(5);
h.slip();
h.sit(25);
h.run();
}
}
②Hero.java
public class Hero{
String name;
int hp;
void attack(){}
void run(){
System.out.println(this.name + "は、" + "逃げ出した!");
System.out.println("GAME OVER");
System.out.println("最終HPは"+ this.hp + "でした。");
}
void sit(int sec){
this.hp += sec;
System.out.println(this.name + "は、" + sec + "秒座った!");
System.out.println("HPが" + sec + "ポイント回復した。");
}
void slip(){
this.hp -= 5;
System.out.println(this.name + "は、" + "転んた!");
System.out.println("5のダメージ!");
}
void sleep(){
this.hp = 100;
System.out.println(this.name + "は、眠って回復した!!");
}
}
これら2つのファイルを同時にコンパイルするとエラー無くClassファイルが作成されますが、それぞれ別にコンパイルすると①のMain.javaのコンパイル時に
「”Hero h = new Hero();」の部分で"シンボルが見つかりません"というエラーになります。
Heroについては②Hero.javaという別ファイルで定義しているからだと思いますが、実行時にエラーが出るのは別々にコンパイルした時にこのようにエラーが出ることが要因なのでしょうか。
ちなみに、①と②のファイルは同じフォルダ内に保存しており、コマンドプロンプトでcdを当フォルダに指定して実行を試みていますが、これが要因なのでしょうか。。
No.1ベストアンサー
- 回答日時:
やってみましたが、このソースで
コンパイル、実行は全く問題ないですね。
やり方は以下の通り。
ソースのあるフォルダに cd して。
① コンパイル
javac Main.java
# 参照しているクラスは自動的にコンパイルされます。
② 実行
java Main
ご回答ありがとうございます!
おっしゃる通り、ソースファイルを別のフォルダに移して再度実行してみたら問題なくできました! コマンドプロンプトでのpath設定が間違っていたのかもしれません。
ありがとうございました!
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- C言語・C++・C# C# DatagridviewにExcelシートを反映するとエラーが出る 2 2023/05/06 17:12
- Ruby vscode 文字化け 1 2022/05/21 19:17
- Java Java プログラム public class Main { public static void 3 2023/08/10 23:46
- Java java 入力 3 4 3 出力 ABC DEFG HIJ このようなプログラムの書き方を教えてくだ 2 2022/07/15 14:18
- Java java final 1 2022/06/10 22:49
- Java 直し方について教えて頂きたいです。 4 2022/08/13 02:11
- C言語・C++・C# PC画面を録画するプログラムでdllの読み込みエラー 1 2023/04/22 08:31
- PHP PHPの構文で間違えが分からない 5 2022/07/11 16:38
- PHP style.cssのjQuery条件付きcssが機能しない 4 2022/07/17 18:27
- オープンソース Try Kotlinで readLine()を使うには 1 2023/03/27 21:06
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
.jarファイルの中身って書き換...
-
javaが文字コードの影響でコン...
-
逆コンパイルの見方について
-
TeXで図を挿入できません.助け...
-
「識別子がクラス名でも名前空...
-
コンパイルエラーに出てくる、i...
-
Javaのコンパイル結果が表示さ...
-
jasperとは
-
サクラエディタでjavaのプログ...
-
emacsでjavaをコンパイルする方法
-
ExcelCS
-
Eclipseコンパイル時のエラー無効
-
javaコンパイル用バッチファイ...
-
dokojavaのコンパイルについて
-
Eclipse>ant deployでOutOfMemo...
-
日本語対応 逆コンパイラについて
-
コンパイルエラー
-
Log4jのインストール
-
テーブルの初期化
-
Eclipse3.5EEでJavaのコンパイ...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
.jarファイルの中身って書き換...
-
IIS環境でJAVAを使用したい
-
javaが文字コードの影響でコン...
-
Eclipse3.5EEでJavaのコンパイ...
-
コンパイルエラーに出てくる、i...
-
サクラエディタでjavaのプログ...
-
Javaのコンパイル結果が表示さ...
-
javax.servlet は存在しません...
-
eclipseの構文エラーについて
-
javaの簡単なソースがコンパイ...
-
「識別子がクラス名でも名前空...
-
eclipseの設定のJREとコンパイ...
-
dokojavaのコンパイルについて
-
逆コンパイルの見方について
-
exlipseでデバックエラーが発生...
-
eclipseについて
-
classファイルを元に戻す
-
日本語対応 逆コンパイラについて
-
コンパイルができないのですが...
-
java サーブレットのサンプルプ...
おすすめ情報